A Guide to Git

As a programmer, I have been exposed to revision control software such as Git which I believe is the most valuable tools for scientific collaboration such as writing papers in mathematics. Here, I would like to give a quick guide to set up and usage tips.

Revision control refers to the process of tracking changes to documents such as in-progress mathematics paper, books, software source code, etc.

Git can be used for personal revision management. To collaborate with others, one typically needs a Git server. It is possible to install your own server though it would be much more convenient to use the many free Git service available such as GitHub and BitBucket. I personally prefer BitBucket since it gives free private repository.

Since Git repository is shared between collaborators, it is easy to get the repository into conflict state. The easiest method to avoid that is branching. Collaborators work on different branches of the repository and meetings and reviews are held to merge stable results into the main branch i.e. the master branch in Git terminology.