Below are all the important topics, and concepts you need to know before venturing into the vast ocean of open source. We have already taught how to create your GitHub accounts. For people who need a guidance in creating their GitHub accounts, and linking it with their IITG Outlook e-mail
, follow this link.
Once your setup is established, let's dive into something you need to know.
Now for learning Git, you can follow this very simple guide by Roger Dudler, and to go in depth of those commands, you can refer the official Atlassian tutorials (only the Beginner
and Collaborating
parts).
There is also a good interface for trying out and practising your git commands - try.github.io. All these have been dealt with in the two lectures taken.
Now, at this juncture, we expect that you already know how to create a Github repository, clone it, then make some changes to the files in the repository, add the changes to the staging area, create commits, and push them. You are also expected to create and publish a pull request to someone's repository.
Congrats! You are now done with the basics of Git and GitHub.
Now, for practicing on real world projects, you have to contribute to Issues maintained by the owners of the respective projects. Issuehub.io actually does a good work of maintainig issues with tags. Choose any programming language you are comfortable with. Then click on good first issue
, and voila, you will get hundreds of issues, of various projects on GitHub. Try to read the codebase, understand the issue, and solve, and make a pull request.
The last thing we wanna touch upon is Pull Request. Generally, there are some pull request etiquettes followed across the open source world. You can skim through them here. There is also a GitHub repo that has the list of some cool beginner-friendle projects. We also will give you a weekly task, regarding creating pull requests, to render you a demo of what goes on in the open dource world.
So, that's it.!! Happy Coding
- How to make your first Open Source contribution in 5 minutes
- Contributing to your First Open Source Projects
- Everyday Git - A useful minimum set of commands for Everyday Git.
- GitHub cheat sheet
By @ArighnaIITG and @codervivek.