Skip to main content

How to Contribute to an Open Source Project on GitHub

38m 20s
English
Paid

“Feel free to submit a PR!” These are words often found in GitHub issues but are commonly met with confusion and fear by many. Starting with open source contributions isn't always straightforward and can indeed be tricky. Through this series, you'll be equipped with the tools, knowledge, and understanding you need to confidently contribute to the vibrant world of open source projects. While much of this series focuses on GitHub, most concepts are broadly applicable to contributing to any open source project, no matter where it is hosted.

Understanding Open Source Contributions

Contributing to open source projects can be a rewarding experience, both in terms of personal growth and professional development. It offers opportunities to collaborate with other developers, improve software skills, and make an impact in the software community.

What is a PR?

PR, or Pull Request, is a method of submitting contributions to an open source project. It allows project maintainers to review your work before integrating it into the main project codebase.

Why Contribute to Open Source?

There are several reasons to contribute to open source:

  • Learning: Develop new skills and improve your coding expertise.
  • Collaboration: Work with talented developers from around the world.
  • Community: Be part of a community and contribute to projects you care about.
  • Impact: Your contributions can be used by thousands, if not millions, of users globally.

Getting Started on GitHub

GitHub is a platform that hosts millions of open source projects. To start contributing, you'll need to understand some basic concepts and workflows.

Setting Up Your GitHub Account

Begin by creating a GitHub account if you don't already have one. Customize your profile to reflect your skills and experiences.

Finding Projects to Contribute To

Search for projects that align with your interests and skill set. Look for labels like 'good first issue' or 'help wanted' to find beginner-friendly contributions.

Submitting Your First PR

Once you've identified a project and issue to work on, it's time to submit your first Pull Request (PR). Follow these steps to ensure your contributions are successful:

Fork the Repository

Fork the project repository to create a copy under your GitHub account.

Clone Your Fork Locally

Use Git to clone the forked repository to your local machine for work.

Create a Branch

Make a new branch where you'll implement your changes, ensuring the main project branches remain clean.

Implement and Test Changes

Make your changes, and thoroughly test them to confirm everything works as expected.

Open the Pull Request

Go back to GitHub and open a Pull Request from your branch. Clearly describe the changes you've made and reference any relevant issue numbers.

Becoming an Effective Contributor

Beyond the technical aspects, effective contributors understand the importance of communication and collaboration. Ask questions, seek feedback, and respect the open source community’s etiquette and guidelines.

Engage with the Community

Participate in discussions and offer assistance where possible. Engaging with the community can enrich your open source journey and open doors to advanced opportunities.

Start your open source journey today, and transform confusion and fear into knowledge and confidence with every contribution you make!

About the Author: egghead

egghead thumbnail
The egghead.io project presents a huge selection of courses and screencasts for developers of all levels and professions.

Watch Online 14 lessons

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 14 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Introduction to GitHub
All Course Lessons (14)
#Lesson TitleDurationAccess
1
Introduction to GitHub Demo
00:48
2
Exploring GitHub
01:48
3
Exploring a Repository
04:08
4
How to install Git SCM
02:16
5
How to authenticate with GitHub using SSH
03:35
6
Identifying How to Contribute to an Open Source Project on GitHub
02:16
7
How to Fork and Clone a GitHub Repository
02:42
8
Setting up the project locally
01:19
9
How to create a Pull Request on GitHub
06:20
10
How to Collaborate on a Pull Request on GitHub
02:22
11
How to update a Pull Request on GitHub
02:58
12
How to rebase a git Pull Request branch
03:40
13
How to squash multiple git commits
02:54
14
Getting a Pull Request Merged and Wrapping up
01:14
Unlock unlimited learning

Get instant access to all 13 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription