Instructor Notes

This is workshop is intended to be run with the University of Edinburgh and makes use of their services.


Why Version Control?


Instructor Note

Learners often try to remember all Git commands at once. Reassure them that they only need a handful today: git config, git init, git status, git add, and git commit. Emphasise the conceptual model (working directory → staging area → repository) before the syntax.



Configuring Git


Instructor Note

Learners may have already used Git on their computers. Ask them to run git config --list --show-origin to display where each value is coming from. This often reveals surprises (e.g. an IDE has silently set the editor to vim).



Recording Changes Locally


Instructor Note

Some learners struggle with the staging area at first. Compare it to packing items into a box (staging) before placing the box in long‑term storage (repository). Running git status after every major step reinforces the mental model.



Working with Remote Repositories


Instructor Note

Learners often forget the -u flag on their first push. Emphasise that git push -u origin main sets up the tracking relationship, allowing future git push/git pull without extra arguments.



Using Git with a Graphical User Interface RStudio


Instructor Note

Reassure learners that the GUI is not a “less powerful” version of Git—it’s just another interface to the same tool. Some users will transition back and forth between the GUI and command line.



Collaborating


Exploring History


Ignoring Things