I think, fundamentally, open source does tend to be more stable software. It’s the right way to do things. — Linus Torwalds This article can be used as a tutorial to start contribution. It contains the content that was used in one of my webinars, “KickOff To Open Source”. The webinar was based on how to start open source contributions, and it covered the basics of and GitHub. You can see the presentation at . There will be more webinars, meetups and tutorial videos and articles soon, to get notified directly in your email, . open source Git http://madhavbahl.tech/opensource/ subscribe here Why Open Source? After hearing “open source”, the first thing that comes to our mind is free software, isn’t it? Most of the people are business minded and go for profit, but open source is free right? Still, there is a huge community of open source developers out there, and there are countless awesome reasons behind this. Open source is in your best interest, whether you are an individual, an organisation, a small business, or a non-profit organisation. There are many reasons you should start an open source project, or start open source contributions as an individual. Some of the reasons I like the most are: People from all over the world can contribute to your code A very good code quality is maintained Reduces duplication of effort (you can put licenses to your repositories) Showcase your talent and competence And the reason I love open source, Lift the community (Always remember, “ ”) we rise by lifting others Simple Words… Each and every project you can find on GitHub (of course which is not private) is an open source project. to make contribution, you just need to find a project that suits you, and an issue to work upon. Therefore, Open Source is 💚 Yes, and I am happy spreading this feeling of love. More you contribute, more awareness and ideas you get! Doing projects in collab with some super awesome people You meet like minded people, and expand your network Cant fix a bug!? Ask Help Any Prerequisite Knowledge? Generally people have a mindset that they need to be very expert in every (or any one) domain to start open source contributions. This is WRONG! Even if you are a beginner and you have a basic knowledge of Git and GitHub, you can start contributing. Photo taken from https://www.wired.com/2013/03/github/ Before proceeding further, I highly suggest that you should have a basic knowledge of Git and GitHub. If you are new to this you can read my 2 part tutorial series on the same: GIT-Good Part-A: Hello GitHub _This is a two part series on GIT and GitHub, → GIT-Good Part-A: Hello GitHub GIT-Good Part-B: In Git we trust! You…_codeburst.io GIT Good: A Practical Introduction to GIT and GitHub (Hello GitHub) GIT-Good Part-B: In Git we trust! _This is a two part series on GIT and GitHub,GIT-Good Part-A: Hello GitHub → GIT-Good Part-B: In Git we trust! You…_codeburst.io GIT Good: A Practical Introduction to GIT and GitHub (In GIT we trust!) After reading these two articles, you can watch this YouTube video to have a great insight on Git commands. Ready! Set! Go! Follow these 6 basic steps and make your first open source contribution in 2 minutes. STEP 1: Find Your Project First step for starting open source is obviously, finding an open source project to contribute to! Either you can go for contributing the project os some open source organisation like fossasia etc. Or, you can find your projects/issues you want ot work on from these websites. — A website which helps you find projects/issues based on your required language or issue labels. issuehub.io — Another useful tool for searching issues Code Triage — List of projects with issues that can be resolved by beginners Up For Grabs — A list of issues that are labelled “first-timers-only”. First Timers Only — A list of awesome beginners-friendly projects. Awesome First Timers PR Although you can find projects to contribute to from the above mentioned resources, it is better to find any open source organisation and start contributing to their projects. You can find some good open source organisations . here Also, you can find some good organisations whose projects were selected for GSoC this year and start contributing to their projects. _Edit description_summerofcode.withgoogle.com Google Summer of Code To Follow The Next Steps You Can Make Your First Open Source Contribution In This Practise Repository: https://github.com/Logic-Xcution/Kickoff-To-Open-Source _Kickoff-To-Open-Source - Guide for your first open source contribution!_github.com Logic-Xcution/Kickoff-To-Open-Source Once you have found the project which you want to contribute to, follow these 5 simple steps. STEP 2: Fork The Repository Fork this repo by clicking on the fork button on the top of the page. This will create a copy of this repository in your account. STEP 3: Clone The Repository Clone the repo to your machine. Go to your GitHub account, click on the clone button and then click the copy to clipboard icon. Open a terminal and run the following git command: git clone "Copied URL" STEP 4: Create a Branch Go to the directory where you cloned the repo.Create a new branch using command git checkout git checkout -b <branch-name> for keeping a standard, let’s have the name of branch as username for example: git checkout -b MadhavBahlMD STEP 5: Make Changes! Resolve Issue! Commit Those Changes! Push To GitHub! Make the necessary changes, commit and push your code to GitHub. Here, we are adding our username, name and bio in the CONTRIBUTORS.md To make commit and push changes, git add .git commit -m "Add [username] as a contributor"git push origin <branch name> STEP 6: Open a Pull Request If you go to your repository on GitHub, you’ll see a button. Click on that button and submit the pull request! Compare & pull request Soon your changes will be reviewed and the PR will be merged if the changes are legit! As Simple As That! Congrats, You just made your first PR.Welcome to the world of open source. STEP 7 (Optional): Keeping your fork synced with original repository First of all, switch to the master branch, master branch is the main working branch which is supposed to have most updated code! git checkout master Now, add original repo’s url as a new remote, say original git remote add original git@github.com:Logic-Xcution/Kickoff-To-Open-Source.git This is a way of telling git that another version of this project exists in the specified url and we’re calling it . Once the changes are merged, fetch the new version of original repository. original git fetch original Now, you need to merge the new revision of my repository into your master branch. git rebase original/master Now you can push these changes to your GitHub repo: git push origin master Also, since your changes are merged and your repo is updated, the branch you created for your contribution is no longer required and you can delete it! git branch -d <brach-name> git push origin --delete <branch-name> By following this step 7, you can make sure that your copy of the project is same as the original project to avoid any conflicts in future. That’s it Found the article helpful? _A Cadet Who Codes | A guide, teacher and mentor for those who want to learn programming and development, subscribe to be the first one to hear from me._http://madhavbahl.tech TheLeanProgrammer | Subscribe Subscribe to TheLeanProgrammer to be the first one to get notified from me for future updates. Feel free to reach out to me anytime if you want to discuss something :D I would be more than happy if you send your feedbacks, suggestions or ask queries. Moreover, I love to make new friends and we can be friends, just drop me a mail. Thanks a lot for reading till end. You can contact me in case if you need any assistance:Email: theleanprogrammer@gmail.comWeb: Github: LinkedIn: http://madhavbahl.tech/ https://github.com/MadhavBahlMD https://www.linkedin.com/in/madhavba_hl/_