-
Notifications
You must be signed in to change notification settings - Fork 25
/
git_resources.html
226 lines (218 loc) · 8.27 KB
/
git_resources.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
<!DOCTYPE html>
<html>
<script type="text/javascript">var blog_title = "Git resources";</script>
<script type="text/javascript">var publication_date = "September 27, 2019";</script>
<head>
<link rel="icon" href="images/ml_logo.png">
<meta charset='utf-8'>
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<link rel="stylesheet" type="text/css" href="stylesheets/stylesheet.css" media="screen">
<link rel="stylesheet" type="text/css" href="stylesheets/print.css" media="print">
<base target="_blank">
<script type="text/javascript" src="javascripts/blog_head.js"></script>
</head>
<body>
<script type="text/javascript" src="javascripts/blog_header.js"></script>
<!-- MAIN CONTENT -->
<div id="main_content_wrap" class="outer">
<section id="main_content" class="inner">
<h3>Get Started with Git</h3>
<p>
You can get by most of your life without Git, until suddenly you
have to write code with three other people, or worse, have to
one day start maintaining Amy's computer vision codebase after she leaves the company
to become a CTO. Then you have half a day to
become an expert in this quirky little version control tool.
Not to worry. These teachers have you covered.
</p>
<a href="
https://xkcd.com/1597/
">
<img src="images/git/git.png"
alt="XKCD cartoon"
title="If that doesn't fix it, git.txt contains the phone number of a friend of mine who understands git. Just wait through a few minutes of 'It's really pretty simple, just think of branches as...' and eventually you'll learn the commands that will fix everything." width=300>
</a>
<p>
I asked my friends and colleagues on
<a href="
https://www.linkedin.com/posts/brohrer_if-a-beginner-wanted-to-learn-how-to-use-activity-6581471551160414208-tx0K
">
LinkedIn</a> and
<a href="
https://twitter.com/_brohrer_/status/1175706016987701248?s=20
">
Twitter</a> if the knew of any Git tutorials they would recommend.
I was overwhelmed by the response. There are a lot to choose from.
However, a few rose to the top as being both very popular
and exceptionally well suited for someone just starting out.
But for every resource listed here, there are five others in the
threads, most of them very good.
</p>
<p>
Several of the resources here reference
<a href="https://github.com/">GitHub</a>, a popular
online server and host for git-managed projects.
Another very similar serivce is
<a href="https://gitlab.com/">GitLab</a>. Most of the
tutorial references on GitHub can be applied to GitLab
with only minor modifications. If you decide you
want to migrate a project from GitHub to GitLab,
<a href="
https://e2eml.school/gitlab_import.html
">here is a step-by-step guide</a>.
</p>
<a href="
https://www.youtube.com/playlist?list=PL-osiE80TeTuRUfjRe54Eea17-YfnOOAx
">
<h3>
Corey Schafer's YouTube tutorials
</h3>
<img src="images/git/coreyschafer.png" width=400
alt="Corey Schafer YouTube tutorial screenshot">
</a>
<p>
This is an excellent all around introduction to Git at the command line.
It stays practical, with brief forays into the underlying mechanisms
where necessary. The video format provides extra momentum.
</p>
<a href="
https://git-scm.com/book/en/v2
">
<h3>
Pro Git, written by Scott Chacon and Ben Straub
</h3>
<img src="
images/git/progit.png
" width=400
alt="
Pro Git book web page
">
</a>
<p>
Of you prefer a book format, Pro Git is an excellent way to go.
Hosted on the Git website, it enjoys the blessing of an
an official resource. It is comprehensive and well put together.
</p>
<a href="
https://happygitwithr.com/
">
<h3>
Happy Git and GitHub for the useR by Jenny Bryan, the STAT 545 TAs, Jim Hester
</h3>
<img src="
images/git/happygitwithr.png
" width=400
alt="
Happy Git with R web page
">
</a>
<p>
If you happen to be an R user, you will never find a better
resource than this. Practical, cheeky, brilliantly organized,
it is a tour de force of instructional writing. Note that
this guide covers both Git and GitHub, two distinct, but tightly
interrelated tools.
</p>
<p>
Even if you're
not an R user, I highly recommend a look through the accompanying
manifesto:
<a href="
https://peerj.com/preprints/3159/
">
Excuse me, do you have a moment to talk about version control?
</a>
</p>
<h3>
Other goodies
</h3>
<p>
There is a deep bench of Git resources you can use to
enrich your training.
<ul>
<li>
<strong>
<a href="https://learngitbranching.js.org/">
Learn Git Branching
</a>
</strong>
Gives video game-style (graphical and interactive)
lessons on how to use git commands.
<br>
<img src="
images/git/learngitbranching.png
" width=350
alt="
Learn Git Branching we page
">
</li>
<li>
<strong>
<a href="https://rogerdudler.github.io/git-guide/">Roger Dudler</a>
</strong>
Presents the git boiled down to its essence.
It has a beauty in simplicity. A tutorial haiku.
<br>
<img src="
images/git/rogerdudler.png
" width=350
alt="
Roger Dudler video tutorials
">
</li>
<li>
<strong>
<a href="https://blog.red-badger.com/2016/11/29/gitgithub-in-plain-english">
Red Badger</a>
</strong>
Gives a shockingly accessible treatise on how it all works,
explained using elves and orcs.
<br>
<img src="
images/git/redbadger.jpg
" width=350
alt="
Red Badger Git tutorial web page
">
</li>
<li>
<strong>
<a href=" https://ohshitgit.com/ ">
Oh shit, git! </a>
</strong>
Helps you figure out what to do when things go horribly wrong,
which they will, at some point.
It also comes in
<a href=" https://dangitgit.com/ ">a without-swears version </a>.
<br>
<img src="
images/git/ohshitgit.png
" width=350
alt="
Oh Shit Git tutorial web page
">
</li>
</ul>
</p>
<br>
<p>
There's a rich variety here, and all of it is top quality.
You'll be ready to start branching and
merging by the end of the day.
</p>
<script type="text/javascript" src="javascripts/blog_signature.js"></script>
</section>
</div>
<script type="text/javascript" src="javascripts/blog_footer.js"></script>
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-10180621-3");
pageTracker._trackPageview();
} catch(err) {}
</script>
</body>
</html>