Document version control

Dropbox doesn't cut it for collaborative work where multiple people want to make changes to a document. And no Track Changes doesn't work either. So we have now set up a distributed version control system called Git.

Here is a really good book for understanding and using Git. Of course, since all our work is 'top secret', we have restricted access to everyone using git. If I have asked you to join a git project, here's what you need to do:

  1. Install Git - take a look at this page for various OSes.
  2. Generate an encryption key. This should generate two parts - a private key, that you store on your computer, and a public key (and only the public key), which you send to me by email...(or bring it on a thumb drive if you are paranoid). The public key is used to authenticate your access to the server without having to enter your password every time.
  3. I will then give you the repository location for the project you are working on. For instance, if you are working on developing the 'RNA Mathematical Model', and we have a repository called RNAModel.git, I will send you its address. You can then 'clone' the repository onto your own harddrive.
  4. You are encouraged to use version control for your documents as well - read the book on how to do it. If you believe you would like to share your repo with others, please shoot me an email and I can create a repository for you on the server.

A word of caution. Please read the second chapter in the Git book very carefully. Of importance to note is that Git is generally used for adding files to a repository rather than changing them around. You cannot change the position or delete files in your repository that you currently are tracking without messing Git up. You have to move or delete them through the Git interface if you must reorganize so that the changes get properly tracked.

It is a bit of work to get it up and running, and to include it in the routine workflow, but once you get used to version control, you will not leave home without it. Let me know if you have questions.