How to make your First Open-Source Contribution
Tags: opensource, git, github, beginners
Published: 2023-04-09 11:56:31

---
title: How to make your First Open-Source Contribution
published: true
date: 2022-09-16 12:55:45 UTC
tags: opensource, git, GitHub, beginner
canonical_url: https://tonie.hashnode.dev/how-to-contribute-to-open-source
---

Contributing to open source is an effective way to learn, teach and gain or build real world experience in just about any skill you can think of.

Open Source refers to any software whose 'source code' is open and accessible to the public. It is a software that anyone can inspect modify or enhance.

The source code is any code created in a programming language that defines the structure and functionality of a software application.

And here's the catch, you don't have to know how to code to contribute to open source, there's a ton of opportunities in the space.

This includes writing documentations, teaching people on how to use the product, designing etc. The opportunities are vast.

And with this opportunities comes numerous benefits. I've listed some of them below:

1. It helps you improve the software applications you use.

2. Actively contributing to open source helps develop your technical skills.

3. By contributing to open source, you can also enhance your soft skills like communication and collaboration with people.

4. Contributing to open source gives you an experience that is akin to the real world experience of a software developer as the skills and process you will be using will be particularly important in the professional world.

### How to find Open Source Projects:

Here's a list of online resources that can help you find open source projects:

1. [GitHub Explore](https://github.com/explore/)

2. [Open Source Friday](https://opensourcefriday.com/)

3. [24 Pull request](https://24pullrequests.com/)

4. [First timers only](https://www.firsttimersonly.com/)

5. [First Contribution](https://firstcontributions.github.io/)

These are only a few, you can do a manual search on Google and you'll be provided with several options.

However there are somethings you should look out for in a project before proceeding to make your contribution. The project should meet the following criteria:

- The project must have a License.

- The project should have a clearly defined and documented ReadMe file

- The project is ACTIVELY accepting contributions

- The project is welcoming and engaging.

### How to Contribute to Open Source?

Now that you've found a project, how do you make your contribution? To contribute to open source, you will have to know how to use Git and GitHub as they are the most popular and effective tools to use.

Here's how to make your first open source contribution using Git and GitHub:

1. **Find a project** : The first step is to of course find a project to contribute to, there's a lot of them out there and many ways of finding them as we've discussed earlier.

2. **Fork the repository** : Once you've found a project on github, click on the fork button. This will sort of copy or reproduce the project under a new repository in your GitHub user.

3. **Clone the repository** : To do this, copy the link of your newly formed repository, it'll look like this; `https://github.com/<YourUsername>/git-demo.git` Now open your terminal on your device and run the following command.

4. **Create a new remote for the upstream repository** : This will help keep your code in sync with the original project. To do this, run the following command

5. **Create a new branch** : Now we need to create and move into a new branch, run the following command

6. **Make a Change to the code** : Now it's time to add, remove and modify the code. After you are done, you can proceed to add these changes to the staging area by running the following command:

7. **Commit your code changes** : After adding your changes to the staging area, it's time to commit them. Run the following command:

8. **Push to your repository** : Now it's time to move these changes to your repository, run the following command:

9. **Create a pull request** : Once you push to your repository, you can go to that repository on GitHub and click on the "Compare and Pull request" button.

This will notify the project owners of your changes and contributions. After inspecting them, they can merge your pull request.

### And Voila, you've made your first open-source contribution 

That's a wrap, if you found this insightful, do well to share it with your friends and colleagues.

If you're contributing to a project, let me know in the comment section. I'll be buzzing to hear from you.