GitHub is a website and service which lets people store
their code in the cloud, with a generous free option that has all the features
you will need to get started. In simple terms, you can think of it as being like
a DropBox for anyone who writes code. But more than being just a place to store
code, the value of GitHub lies in its version control capabilities, and open
source collaborative community. Particularly in the scientific context, the
version control capabilities of GitHub allows for reproducibility, and
sovereignty of IP (you can see the history of an idea develop). It is also
possible to generate Digital Object Identifiers (DOIs) for your repositories,
thanks to the integration with Zenodo, which makes it
easier to reference your code repositories in the academic literature.
Whether you are writing code by yourself, within a small team, or even as part
of a large collaboration, GitHub can help you to safely and securely manage your
projects, and work together with others from all over the world.
Fun fact:
This very website is hosted as a repository on GitHub!
Using the GitHub Desktop program is a great way
to get started with Git. If you’ve never used GitHub or Git version control
before, check out the HelloWorld quick
start guide provided by GitHub. By following this short tutorial, you will have
learnt a number of skills such as:
How to make an open source repository (a place where you can store your project)
How to make a branch (a type of isolated version of your project where you can
make changes without affecting the main project)
How to make changes to a file, and “commit” those changes to GitHub
How to open and merge a pull request - which pulls the content from the branch
you created, into your main project!