I had been super interested in contributing to Open Source Projects for a long time but didn't have any idea on how to get started. This article is for anyone who wants to get into Open Source Projects development but feels overwhelmed on how to start.
You will need basic knowledge of
git to follow along with this article. We will be focusing on Open Source Projects on GitHub, but the same skillset is transferable to any other
git based site like GitLab.
The first thing to do is Fork the repository you want to contribute to:
Now you have a copy of the repository in your GitHub account.
Execute the command:
git clone <clone link>
A copy of the repository will be created on your machine. Add Upstream remote, which is just a fancy name for the source repository, using:
git remote add <upstream remote name> <source repository clone link>
Now you can modify the code. Make sure to commit all the changes you make.
After committing changes, you can update the source repository using:
git push origin <branch name to push changes>
Now you can create a Pull Request in the source repository and the maintainers would review and merge your code.
Now that you know how to contribute to Open Source Projects, you might just want to jump right in and contribute to the largest projects on the planet. But I can assure you when you are about to open your first few Pull Request, Imposter Syndrome will hit you real hard with questions like "Would I be able to do this correctly?" and "What if I fail?". The only antidote to this fear is ACTION! If you are feeling unsure, contact the members of the organisation you want to contribute to, as most organisations use some platform like Discord to discuss about the contributions. One year ago I was exactly in your shoes, and now I do have a couple of contributions in some amazing repositories:
If you start on this journey and keep putting one foot in front of the other even when challenges and difficulties show up, you will make it! Best of Luck :)
Want to work together? Contact me on Upwork
Connect to me on: