[![Open Source Love](https://firstcontributions.github.io/open-source-badges/badges/open-source-v1/open-source.svg)](https://github.com/firstcontributions/open-source-badges) [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT) [![Open Source Helpers](https://www.codetriage.com/roshanjossey/first-contributions/badges/users.svg)](https://www.codetriage.com/roshanjossey/first-contributions) #### _Read this in [other languages](docs/translations/Translations.md)._ [Shqip](docs/translations/README.al.md) [Armenian](docs/translations/README.arm.md) [Uzbek language](docs/translations/README.uz.md) [Azərbaycan dili](docs/translations/README.aze.md) [বাংলা](docs/translations/README.bn.md) [Bulgarian](docs/translations/README.bg.md) [Português (Brasil)](docs/translations/README.pt_br.md) [Català](docs/translations/README.ca.md) [中文 (Simplified)](docs/translations/README.zh-cn.md) [Czech](docs/translations/README.cs.md) [Deutsch](docs/translations/README.de.md) [Dansk](docs/translations/README.da.md) [المصرية](docs/translations/README.eg.md) [Dezéiriya](docs/translations/README.dz.md) [Español de España](docs/translations/README.es.md) [Française](docs/translations/README.fr.md) [Gaeilge](docs/translations/README.ga.md) [Galego](docs/translations/README.gl.md) [Ελληνικά](docs/translations/README.gr.md) [ქართული](docs/translations/README.ge.md) [Magyar](docs/translations/README.hu.md) [Bahasa Indonesia](docs/translations/README.id.md) [עִברִית](docs/translations/README.hb.md) [हिंदी/ગુજરાતી/मराठी/മലയാളം/ಕನ್ನಡ/తెలుగు/छत्तीसगढ़ी/বাংলা/தமிழ்](docs/translations/Translations.md) [தமிழ்](docs/translations/README.ta.md) [فارسی](docs/translations/README.fa.md) [Italiano](docs/translations/README.it.md) [日本語](docs/translations/README.ja.md) [සිංහල](docs/translations/README.si.md) [Kiswahili (Kenya)](docs/translations/README.kws.md) [한국어](docs/translations/README.ko.md) [Lietuvių kalba](docs/translations/README.lt.md) [Limba Română Limba Română](docs/translations/README.ro.md) [မြန်မာ](docs/translations/README.mm_unicode.md) [Македонски](docs/translations/README.mk.md) [Español de México](docs/translations/README.mx.md) [Bahasa Melayu / بهاس ملايو‎ / Malay](docs/translations/README.my.md) [Dutch](docs/translations/README.nl.md) [Norsk](docs/translations/README.no.md) [नेपाली](docs/translations/README.np.md) [Wikang Filipino](docs/translations/README.fil.md) [English (Pirate)](docs/translations/README.en-pirate.md) [اردو](docs/translations/README.ur.md) [Twi (Ghana)](docs/translations/README.gh.md) [Polski](docs/translations/README.pl.md) [Português (Portugal)](docs/translations/README.pt-pt.md) [Русский язык](docs/translations/README.ru.md) [العربية](docs/translations/README.ar.md) [Svenska](docs/translations/README.se.md) [Slovenčina](docs/translations/README.slk.md) [Slovenščina](docs/translations/README.sl.md) [ภาษาไทย](docs/translations/README.th.md) [Türkçe](docs/translations/README.tr.md) [中文(Traditional)](docs/translations/README.zh-tw.md) [Українська](docs/translations/README.ua.md) [Tiếng Việt](docs/translations/README.vn.md) [Swahili language](docs/translations/README.sw.md) [Zulu (South Africa)](docs/translations/README.zul.md) [Afrikaans (South Africa)](docs/translations/README.afk.md) [Igbo (Nigeria)](docs/translations/README.igb.md) [Bambara (Mali)](docs/translations/README.mli.md) [Hausa (Nigeria)](docs/translations/README.hau.md) [Yoruba (Nigeria)](docs/translations/README.yor.md) [Latvia](docs/translations/README.lv.md) [Suomeksi](docs/translations/README.fi.md) [Беларуская мова](docs/translations/README.by.md) [Српски](docs/translations/README.sr.md) [Қазақша](docs/translations/README.kz.md) [Bosanski](docs/translations/README.bih.md) [Bosanski](docs/translations/README.bih.md) [Hrvatski](docs/translations/README.hr.md) [پښتو](docs/translations/README.ps.md) [Somalia](docs/translations/README.so.md) [Ecuador](docs/translations/README.ec.md) [Luganda (Uganda)](docs/translations/README.lug.md) [Turkmen language](docs/translations/README.tm.md) [Ewe (TOGO)](docs/translations/README.ewe.md) [አማርኛ](docs/translations/README.et.md) [Kurdî](docs/translations/README.kr.md) [Malagasy](docs/translations/README.mg.md) [ភាសាខ្មែរ](docs/translations/README.kh.md) [Moroccan Darija](docs/translations/README.ma.md) [Mongolian](docs/translations/README.mn.md) # First Contributions This project aims to simplify and guide the way beginners make their first contribution. If you are looking to make your first contribution, follow the steps below. _If you're not comfortable with command line, [here are tutorials using GUI tools.](#tutorials-using-other-tools)_ fork this repository #### If you don't have git on your machine, [install it](https://docs.github.com/en/get-started/quickstart/set-up-git). ## Fork this repository Fork this repository by clicking on the fork button on the top of this page. This will create a copy of this repository in your account. ## Clone the repository clone this repository Now clone the forked repository to your machine. Go to your GitHub account, open the forked repository, click on the code button, then on SSH tab and then click the _copy url to clipboard_ icon. Open a terminal and run the following git command: ```bash git clone "url you just copied" ``` where "url you just copied" (without the quotation marks) is the url to this repository (your fork of this project). See the previous steps to obtain the url. copy URL to clipboard For example: ```bash git clone git@github.com:this-is-you/first-contributions.git ``` where `this-is-you` is your GitHub username. Here you're copying the contents of the first-contributions repository on GitHub to your computer. ## Create a branch Change to the repository directory on your computer (if you are not already there): ```bash cd first-contributions ``` Now create a branch using the `git switch` command: ```bash git switch -c your-new-branch-name ``` For example: ```bash git switch -c add-alonzo-church ```
If you get any errors using git switch, click here: If the error message "Git: `switch` is not a git command. See `git –help`" appears, it's likely because you're using an older version of git. In this case, try to use `git checkout` instead: ```bash git checkout -b your-new-branch-name ```
## Make necessary changes and commit those changes Now open `Contributors.md` file in a text editor, add your name to it. Don't add it at the beginning or end of the file. Put it anywhere in between. Now, save the file. git status If you go to the project directory and execute the command `git status`, you'll see there are changes. Add those changes to the branch you just created using the `git add` command: ```bash git add Contributors.md ``` Now commit those changes using the `git commit` command: ```bash git commit -m "Add your-name to Contributors list" ``` replacing `your-name` with your name. ## Push changes to GitHub Push your changes using the command `git push`: ```bash git push -u origin your-branch-name ``` replacing `your-branch-name` with the name of the branch you created earlier.
If you get any errors while pushing, click here: - ### Authentication Error
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
  remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.
  fatal: Authentication failed for 'https://github.com//first-contributions.git/'
Go to [GitHub's tutorial](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account) on generating and configuring an SSH key to your account. Also, you might want to run 'git remote -v' to check your remote address. If it looks anything like this:
origin	https://github.com/your-username/your_repo.git (fetch)
  origin	https://github.com/your-username/your_repo.git (push)
change it using this command: ```bash git remote set-url origin git@github.com:your-username/your_repo.git ``` Otherwise you'll still get prompted for username and password and get authentication error.
## Submit your changes for review If you go to your repository on GitHub, you'll see a `Compare & pull request` button. Click on that button. create a pull request Now submit the pull request. submit pull request Soon I'll be merging all your changes into the main branch of this project. You will get a notification email once the changes have been merged. ## Where to go from here? Congrats! You just completed the standard _fork -> clone -> edit -> pull request_ workflow that you'll often encounter as a contributor! Celebrate your contribution and share it with your friends and followers by going to [web app](https://firstcontributions.github.io/#social-share). If you'd like more practice, checkout [code contributions](https://github.com/roshanjossey/code-contributions). Now let's get you started with contributing to other projects. We've compiled a list of projects with easy issues you can get started on. Check out [the list of projects in the web app](https://firstcontributions.github.io/#project-list). ### [Additional material](docs/additional-material/git_workflow_scenarios/additional-material.md) ## Tutorials Using Other Tools | GitHub Desktop | Visual Studio 2017 | GitKraken | VS Code | Sourcetree App | IntelliJ IDEA | | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | [GitHub Desktop](docs/gui-tool-tutorials/github-desktop-tutorial.md) | [Visual Studio 2017](docs/gui-tool-tutorials/github-windows-vs2017-tutorial.md) | [GitKraken](docs/gui-tool-tutorials/gitkraken-tutorial.md) | [Visual Studio Code](docs/gui-tool-tutorials/github-windows-vs-code-tutorial.md) | [Atlassian Sourcetree](docs/gui-tool-tutorials/sourcetree-macos-tutorial.md) | [IntelliJ IDEA](docs/gui-tool-tutorials/github-windows-intellij-tutorial.md) |

This project is supported by: