In essence, GitHub is an online service that hosts software development projects and project code. If your project is open source, you can use GitHub for free – if you have a private, commercial project you can choose from a number of paid plans. Amongst open source developers and programmers it could be said that GitHub is the most popular way to host projects and the associated code. GitHub uses something called Git version control – which is why it is called GitHub.
It’s easy to sign up to GitHub and create your own repository – the name for a project on GitHub. You can also add your team members or any other user to your GitHub repository. Where a project is open source, GitHub makes it easy to “fork” a project and to create a brand new repository containing existing open source code. This method can be used to submit patches or for individual users to contribute their own code additions to an open source repository. There is always an “owner” for a project – it would be up to them to “accept” any changes.
GitHub is a popular facility for WordPress developers too – many developers of WordPress plugins and themes will put their code on GitHub. As a result WordPress developers can all collaborate on these themes and plugins, assimilating feedback and enabling other team members to view, download and use the WordPress code they developed.
GitHub has become very popular over time so it is no longer just a place to host software development projects – developers and programmers also use GitHub for social networking. Just like any other social networking site, GitHub lets its users follow each other in order to get updates on projects, and GitHub also lets users assign a star rating to fellow users. So, GitHub users can watch and stay up to date with what their collaborators and co-workers are doing.
Note that even though GitHub started as a central hub for software development, it can also be used for a variety of other projects – think documentation, developing learning resources or basically any project where a mix of users can work together online, collaborating towards a common goal.