Introduction to Version Control with Git and GitHub

Learn to use version control to manage your software development and collaborate effectively with others.

Overview

Version control systems are an incredibly valuable tool for organising software development. They are essential for producing reproducible and transparent research software, coming into their own for facilitating collaborative work. This course will give an introduction to Git, one of the most widely used version control systems in academia and industry. It will also give an introduction to internet platforms such as GitHub and GitLab, which are built on top of Git and designed to facilitate collaboration between software developers and the sharing of code. A key component of the course will be hands-on practice using Git and GitHub, working through theoretical concepts that will be explained with the aid of live demonstrations. By the end of the course, it is intended participants will be comfortable using the basic features of Git and GitHub to keep a record of their day-to-day code development and share their work with others.

Course objectives

On completion of this series of workshops, participants will be able to:

Pre-requisite knowledge

Workshop format

This is a hybrid workshop that runs over 2 sessions. The schedule can be found here. Please note that you will be expected to attend both sessions.

Upcoming course dates

The sessions will be delivered according to the following timetable.

Session Dates Time Venue
Session 1 12 December 2023 1pm – 4pm Old Library Training Room 4
Session 2 19 December 2023 1pm – 4pm Old Library Training Room 4

Registration for this course is handled by University of Exeter Researcher Development (see the Software Training section).

Set-up instructions for attendees

If you have registered for this course you can find the instructions for setting up your computer here. Also take a look at additional resources and supplementary material for the course.

Course notes

If you are unable to attend any of the dates above, the course notes are freely available for you to work through. Please note that you will need to have completed the set up instructions linked above.

Follow-up courses

On completion of this course you will be invited to join a network of other participants. This is a supportive forum for you to ask follow-up questions and receive invites to follow-on courses.

Feedback

Please remember to complete a feedback survey at the end of the course. Our workshops are under continual review and your experiences, suggestions and criticism are invaluable for shaping the direction of this initiative. This is especially important if you complete the materials in your own time, as it enables us to measure impact. If you have ideas on other courses you would like to see then please contact Eilis Hannon: E.J.hannon@exeter.ac.uk.

Join us

If you are interested in becoming part of our community of workshop helpers, leaders and developers please contact Eilis Hannon: E.J.Hannon@exeter.ac.uk.

Acknowledgements

This course was developed by members of the University of Exeter’s Research Software Engineering Group who are enthusiastic about sharing their skills with the wider research community.

If you have benefited in any way from this course and want to support its long term sustainability then please take the time to complete our feedback survey, recommend it to your colleagues, and enthuse about it to your senior leadership team.

This workshop is brought to you by:

This course has been adapted from Software Carpentry’s Version Control with Git course [1] (retrieved from https://swcarpentry.github.io/git-novice/ and http://erdavenport.github.io/git-lessons/10-branching.html), which is © Software Carpentry and licensed under Creative Commons BY 4.0. Changes have been made from the original content.

References

  1. Ivan Gonzalez; Daisie Huang; Nima Hejazi; Katherine Koziar; Madicken Munk (eds): “Software Carpentry: Version Control with Git.”
    Version 2019.06.1, July 2019, https://github.com/swcarpentry/git-novice, 10.5281/zenodo.3264950