Owned by Microsoft, Github is the world’s largest open source platform where you can store any code, software or app which you may have developed. On its website, it boasts of hosting over 73 million software developers and four million organisations.
And, as the word open source suggests, it is free for all and free from all kinds of scrutiny. Anyone can put any app or code on it for others to see. Unlike what happens on Apple’s Play Store or on its Samsung’s equivalent, where every app goes through several levels of scrutiny before making it to the mobile phone’s application store.
For the unversed, GitHub is an online software development platform that is used by software developers to store, track, and collaborate on projects.
It allows a developer to upload his or her own code files and to collaborate with other developers on open-source projects. It also works as a social networking site, where developers can freely collaborate, network, and put forward their projects.
To better understand GitHub, first, you must understand Git. Git is an open-source version control system.Simple, right? But what does that really mean? A simple example will help.
Say a group of developers creates something — for example an app. They will make constant changes to the app’s code and release new versions even after its official release.
Now, a version control system will keep these revisions untangled and in order by storing the modifications in a central repository.
It will allow the developers to collaborate with ease as they will be able to download a new version of the app, make changes, and upload the newest revision. And, every developer involved can view these new changes, download them, and contribute to the project.
In fact, people who are not involved with the development of the said project can still download the associated files and use them.
Basically, Git is used for managing and keeping a track of file revisions. While it can be used with any file type, it is most often used for keeping track of code files.The unique demands of building a software have made GitHub so popular.
Google Docs, for example, has a “Version History” tool. This might sound a lot like that, but it is more advanced.
To add features to and fix bugs in a software, developers have to frequently, and even simultaneously, update its code. And, it definitely doesn’t make sense to make said changes directly to the source code. Instead, a developer will work on his or her own copy of the code. Afterwards, once their code has been tested thoroughly, it can be added to the main codebase.
There also needs to be a way to combine every developer’s contributions into one unified codebase and identify who contributed what. And these changes to the code must be tracked and stored in case there is a need to restore a previous version. GitHub allows all this.