You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: instructor-notes.md
+25-35Lines changed: 25 additions & 35 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,24 +2,6 @@
2
2
title: Instructors' Guide
3
3
---
4
4
5
-
***
6
-
7
-
# Tips and Tricks
8
-
9
-
Known problems that learners encounter:
10
-
11
-
*Windows*: When using an outdated version of Windows OpenSSH, learners cannot set up the SSH connection to GitHub. SOLUTION: Update OpenSSH version.
12
-
13
-
***
14
-
15
-
## Making a handout
16
-
17
-
To make a handout for this lesson, adapt/print from [https://librarycarpentry.org/lc-git/reference.html](https://librarycarpentry.org/lc-git/reference.html).
18
-
19
-
***
20
-
21
-
# General notes on Git
22
-
23
5
Using a software tool to handle the versions of your project files
24
6
lets you focus on the more interesting/innovative aspects of your project.
25
7
@@ -52,36 +34,47 @@ working in teams or not, because it is
52
34
- a better way to collaborate than mailing files back and forth, and
53
35
- a better way to share your code and other scientific work with the world.
54
36
37
+
## Troubleshooting Common Problems
38
+
39
+
- When using an outdated version of Windows OpenSSH, learners cannot set up the SSH connection to GitHub.
40
+
41
+
- Try updating their version of OpenSSH version.
42
+
43
+
## Making a handout
44
+
45
+
To make a handout for this lesson, adapt/print from the [Reference page](https://librarycarpentry.org/lc-git/reference.html).
46
+
55
47
## Teaching Notes
56
48
57
-
-Resources for "splitting" your shell so that recent commands remain in view: [https://github.com/rgaiacs/swc-shell-split-window](https://github.com/rgaiacs/swc-shell-split-window).
49
+
-Utility for "splitting" your shell so that recent commands remain in view: [Software Carpentry Shell Split Window](https://github.com/UCL-ARC/swc-shell-split-window).
58
50
59
51
- Make sure the network is working *before* starting this lesson.
60
52
61
53
- Drawings are particularly useful in this lesson: if you have a whiteboard,
62
-
use it to visualise and describe the [GitHub flow](https://guides.github.com/introduction/flow/).
54
+
use it to visualise and describe GitHub flow.
55
+
The [current documentation of GitHub flow](https://docs.github.com/en/get-started/using-github/github-flow) is text-heavy,
56
+
so it might be easier to draw inspiration from the interactive guide "[Understanding the GitHub flow](https://web.archive.org/web/20200728161719/https://guides.github.com/introduction/flow/)" from 2020.
63
57
64
58
- Version control is usually not the first subject in a workshop,
65
59
so get learners to create a GitHub account after the session before.
66
60
Remind learners that the username and email they use for GitHub (and setup
67
61
during Git configuration) will be viewable to the public by default.
68
62
However, there are many reasons why a learner may not want their personal
69
63
information viewable, and GitHub has [resources for keeping an email address
- If some learners are using Windows, there will inevitably be issues
73
-
merging files with different line endings. (Even if everyone's on
74
-
some flavor of Unix, different editors may or may not add a
75
-
newline to the last line of a file.) Take a moment to explain
76
-
these issues, since learners will almost certainly trip over them
77
-
again. If learners are running into line ending problems, GitHub
78
-
has a [page](https://help.github.com/en/articles/dealing-with-line-endings) that helps with troubleshooting.
66
+
- It is likely that learners will run into issues when merging files due to whitespace differences.
67
+
For example, a text editor might automatically add a newline to the last line of a file, causing an unexpected difference.
68
+
Conflicts can also arise due to Windows using different line endings from other operating systems.
69
+
Take a moment to explain these issues, since learners will almost certainly trip over them again.
70
+
GitHub provides guidance on [how to configure Git to handle line endings](https://docs.github.com/en/get-started/git-basics/configuring-git-to-handle-line-endings);
71
+
the [section on refreshing a repository](https://docs.github.com/en/github/using-git/configuring-git-to-handle-line-endings#refreshing-a-repository-after-changing-line-endings) may be helpful if learners need to change the `core.autocrlf` setting after already having made one or more commits.
79
72
80
-
- We don't use a Git GUI in these notes because we haven't found one that
73
+
- We don't use a Git GUI in this lesson because we haven't found one that
81
74
installs easily and runs reliably on the three major operating systems, and
82
75
because we want learners to understand what commands are being run. That
83
76
said, instructors should demo a GUI on their desktop at some point during
84
-
this lesson and point learners at [this page](https://git-scm.com/downloads/guis).
77
+
this lesson and point learners at the Git website's [list of available GUIs](https://git-scm.com/tools/guis).
85
78
86
79
- Instructors should show learners graphical diff/merge tools like
87
80
[DiffMerge](https://sourcegear.com/diffmerge/).
@@ -93,9 +86,6 @@ working in teams or not, because it is
93
86
94
87
- Further resources:
95
88
96
-
-[git-it](https://github.com/jlord/git-it-electron#git-it-desktop-app) is a self-paced command-line Git demo,
97
-
with [git-it-electron](https://github.com/jlord/git-it-electron) its GitHub Desktop successor.
98
-
- Try GitHub's [resources to learn Git](https://try.github.io/) or Codeacademy's [Learn Git](https://www.codecademy.com/learn/learn-git).
89
+
-[Git-it](https://github.com/jlord/git-it-electron#git-it-desktop-app) is a self-paced Git demo that runs as an app on your computer.
90
+
- Try GitHub's [resources to learn Git](https://learn.github.com/) or Codecademy's [Learn Git & GitHub](https://www.codecademy.com/learn/learn-git).
99
91
- For instructors, [the Git parable](https://tom.preston-werner.com/2009/05/19/the-git-parable.html) is useful background reading.
0 commit comments