Contributing to open-source projects as a beginner can be a little overwhelming. We come across many terms which might sound alien to us. I remember myself 3 months ago, trying to contribute to a beginner-friendly issue when the maintainer told me to “make a PR” and I didn’t know that PR actually is the short form for Pull Request.
To help you avoid the hurdles I faced and prevent time-consuming mistakes that I made while beginning my open-source contributions journey, I have curated a list of essential terms one must know, in order to begin his/her open-source contributions journey.
Before that one very important tip - Open-source is not about spoon-feeding, so you will have to learn things by yourself, by making mistakes and learning from them. Therefore is completely fine that you don’t understand what to do. how to raise an issue? how to merge a PR? Open-source is a community of the most supportive people in the world and everyone would love to help you once you get stuck at some place. So try out, fail and iterate, don’t expect people won’t answer you or think you are dumb. Don’t hesitate asking, but neither should you expect spoon-feeding.
Starting from the very basics
Git
Git is a distributed version control system that helps developers manage and track changes in their code projects. It allows you to create a history of changes, switch between versions, and collaborate with others. Git stores code in repositories and track each change made, enabling easy branching, merging, and resolving conflicts. You can work offline and sync changes later. Git’s decentralized nature ensures multiple developers can work simultaneously without conflicts. It provides a reliable and efficient way to organize, share, and safeguard code, making it an essential tool for collaborative software development.
GitHub
GitHub is a web-based platform that hosts and manages Git repositories. GitHub will be the place where you will contribute to various open-source projects. It provides a centralized space for developers to collaborate on code projects. GitHub allows you to store your code, track changes, and work with others in a streamlined manner. It offers features like issue tracking, pull requests, and code review, facilitating collaboration and efficient development workflows. With GitHub, you can easily share your code, contribute to open-source projects, and showcase your work. It serves as a social platform for developers, fostering community engagement and making it a hub for version control and collaborative coding.