Collaboration with Git


Course Summary

Collaboration in the production of software and text is a crucial aspect of bioinformatics research. In the past, researchers and others depended on ad hoc approaches to maintaining date or number-annotated filenames, archives of files, online shared drives, and proprietary solutions such as change tracking in word processing software.

None of these approaches scale well or allow safe and informative histories to be available for auditing the collaboration process.

More recently shared editing platforms such as Google docs have become available which goes someway towards this, but cannot be used for collaboration on software projects and lack some features that help in the collaboration process.

There are rich solutions to the problem though that have existed in the domain of software engineering for some time.

In this course, we will explain the foundations of modern collaboration tools and demonstrate current good practice in the use of available tools.


In the following pages, we strongly encourage you to manually type all commands. The mistakes you will inevitably make will actually be important learning steps. Additionally, in your work beyond today, you will probably not have any instructions to follow. The experience of typing these commands will equip you for future work far better than if you simply copy and paste.

Let’s get started.

Graphics and text from the Pro Git book, written by Scott Chacon and Ben Straub, used under the Creative Commons Attribution Non Commercial Share Alike 3.0 license. Graphics from, written by Randall Munroe, used under the Creative Commons Attribution-NonCommercial 2.5 License.