All Images

IntroductionWhat is Version Control?


Figure 1

Four Python files named: work.py, work_final.py, work_final_2.py, work_final_2_really_final.py
Is this effective version control?

Figure 2

Git logo

Figure 3

GitHub logo

The Basics: Working Alone


Figure 1

Starting page of GitHub Desktop. There's an arrow pointing to 'Create a New Repository on your hard drive'
GitHub Desktop view

Figure 2

GitHub Desktop diff view. In the left hand panel, there's 1 changed file with our arrow pointing to it. In the right hand panel, there's a diff showing the new file
GitHub Desktop diff view. In the left hand panel, there’s 1 changed file with our arrow pointing to it. In the right hand panel, there’s a diff showing the new file

Figure 3

GitHub Desktop diff view with two commits
GitHub Desktop view

Figure 4

GitHub Desktop screenshot showing correspondence to the command line interface. "git status" is "changes; "git log" is "history"; "git help" is "help"; "git add" is the checkbox in the "changes" panel; "git commit" is the "commit to main" button; "git push" is "publish repository"; "git diff" is the right hand panel

Remote Repositories


Figure 1

GitHub Desktop showing fig

Figure 2

GitHub screenshot showing list of repositories and new repo button

Figure 3

GitHub Desktop with 'Push origin' button highlighted

Figure 4

Big red button labelled 'Do Not Press'
Guess what we’re going to press?

Figure 5

GitHub Desktop 'Can't find git_tutorial'
Click “Remove”

Figure 6

GitHub Desktop list of repositories
Then this

Undoing Changes


Figure 1

GitHub Desktop

Figure 2

GitHub Desktop showing commit hash

Figure 3

GitHub Desktop showing right-click menu on commit

Figure 4

GitHub Desktop showing reverted commit

Working with others


Figure 1

Three commits in a line, with arrows connecting them, left to right

Figure 2

A fourth commit, branching off from the first three

Figure 3

A fifth commit connected to the fourth one

Figure 4

A fifth commit connected to the fourth one

Figure 5

A fifth commit connected to the fourth one

Figure 6

Tree diagram showing the `my-feature` branch merged into `main`
Merged branches

Figure 7

GitHub Desktop showing 'New Branch' button

Figure 8

{alt=“GitHub screenshot showing”Open a pull request” page”}


Figure 9

{alt=“GitHub Desktop showing”Fetch origin” button”}


Figure 10

Fork{alt=“Screenshot of GitHub showing”Fork” button”}


Figure 11

A conflict when merging branches