SWD2: Version Control with Git and GitHub

Learn the basics of version control with git for better collaboration and reproducible workflows
Someone editing code

Version control can be thought of as the lab notebook of the digital world: it’s what professional software developers and authors use to keep track of what they’ve done and to collaborate with other people. Every large software development project relies on it, and most programmers use it for their small jobs as well. It isn’t just for software: books, papers, small data sets, and anything that changes over time or needs to be shared can and should be stored in a version control system.

Version control ensures that:

  • You can link any results to a specific version of your code (key to reproducible research);
  • You can roll back your code to any point in its history;
  • Your contribution to any collaborative work is correctly attributed;
  • You can share your code with the broader scientific community.

This course includes practical exercises and hands-on coding that you will be guided through.

Learning objectives

At the end of the workshop, attendees will be able to:

  • Understand the benefits and advantages of automated version control
  • Set up Git on their own computer
  • Create a repository
  • Track changes and exploring history
  • Ignore files that do not need to be tracked
  • Manage remote repositories using Github
  • Collaborate effectively
  • Resolve conflicts in code versions

Suitability

Research postgraduate students and staff from all faculties and research domains who are new to version control with git.

Prerequisites

  • We will contact you ahead of the course to confirm any required software installation (all software will be available for user install, so no admin rights required)
  • Basic familiarity with the Linux command line.
    • If you lack familiarity with command line Linux, please consider taking the following first:
      HPC0: Introduction to Linux for HPC

Duration

1 full day session

Frequency

This course runs one to two times per year depending on demand.

How to Book

Booking for this course is through the IT Training Unit (login required).

Bespoke Courses

Want us to deliver a bespoke version of this course in your department?

Submit a Research Computing Query (login required) and we’ll be in touch to discuss your requirements.