SWD 2: Version Control with Git and Github (Online)

Course Code
50293245

Provider
IT

Tutor(s):
Dr Patricia Ternes Dallagnollo,Dr Patricia Ternes Dallagnollo

Suitability
Research postgraduate students and above; teaching and lecturing staff

Date(s)
Wednesday, October 08, 2025, 10:00 to 13:00
Wednesday, October 15, 2025, 10:00 to 13:00

Max Places:
45

Description
This course consists of 2 x half day online sessions.

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

COURSE CONTENT:
Version control can be thought of as the lab notebook of the digital
world: it's professional software developers and authors use to keep
track of what they have 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. And 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

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

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

In this online hands-on course, you will develop the skills to use the
most common version control system (Git) through the following
activities:

- Understanding the benefits and advantages of automated version control
- Setting up Git on your own computer
- Creating a repository
- Tracking changes and exploring history
- Ignoring files
- Managing remote repositories using Github
- Managing teams and collaborating
- Coping with conflicts
- Open Science and Licensing issues

PREREQUISITES:
We recommend that attendees have a working knowledge of the Unix shell
and 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

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)

DURATION: 2 x half day online sessions, one week apart.

Cost: Free of Charge