Watch this workshop on YouTube

Git is a version control system that allows you to save multiple versions of a file or directory. This is useful to allow you to keep a record of all changes made to a file, and to move backwards and forwards in time through different versions of your file.

Git is an example of a version control system. There are many different version control systems, e.g. CVS, subversion and mercurial.

However, Git has risen to become almost the standard version control system with extremely high adoption and widespread use across academia, personal projects and industry. The State of the Octoverse gives a good idea of how widespread git has become. In my opinion, git is the right choice for version control for all new projects.

Git was originally developed to manage version control for the source code of the Linux kernel (Linux's and Git's creator, Linus Torvalds, jokes that he named git after himself). Despite starting as a tool for programmers, it is now used to version control any kind of file, and is now widely used in academia for a whole host of projects, e.g.

Git is free and open source, and there are many Git tutorials available.

This is a short workshop that aims to introduce you to version control using Git. At the end of this workshop you will know how to;

This workshop is a pre-requisite for our Git for Collaboration workshop, which will show you how you can use git to collaborate with and share files with others.

Please feel free to work through this workshop at your own pace (and watch pre-recorded video walkthroughs of each chapter via the associated links). Git is best learned by using it, so please copy out and play with the examples provided, and have a go at the exercises. Throughout this workshop you will build up a "cheat sheet" of Git commands. These are summarised on the summary page.