-
Notifications
You must be signed in to change notification settings - Fork 18
/
index.html
252 lines (243 loc) · 12.5 KB
/
index.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
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="generator" content="pandoc">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
<title>GitHub演習</title>
<style type="text/css">
p {
padding-left: 1em;
}
.markdown-body {
box-sizing: border-box;
min-width: 200px;
max-width: 980px;
margin: 0 auto;
padding: 45px;
}
p.caption {
display: none;
}
img {
width: 100%
}
@media (max-width: 767px) {
.markdown-body {
padding: 15px;
}
}
</style>
<link rel="stylesheet" href="https://kaityo256.github.io/python_zero/github-markdown.css" type="text/css" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
<link href="https://use.fontawesome.com/releases/v5.6.1/css/all.css" rel="stylesheet">
</head>
<body>
<article class="markdown-body">
<header>
<h1 class="title"><a
href="https://kaityo256.github.io/github/">GitHub演習</a></h1>
</header>
<a href="https://github.com/kaityo256/github">
<div class="btn-square">
<i class="fab fa-github"></i> View on GitHub
</div>
<p></a></p>
<h1
id="この講義ノートについて">この講義ノートについて</h1>
<p>これは、理工学部の三年学部生向けのGit/GitHubを用いたソフトウェア開発演習のための講義ノートである。概ね一般的な記述となっているが、一部に大学のPC室特有の記述があるので、他大の方が利用される際は注意されたい。4回の座学、4回の実習の、計8回の講義/演習で学ぶ構成となっている。</p>
<p>なお、この講義ノートを元にした書籍が出版されている。</p>
<p><a href="https://www.amazon.co.jp/dp/4065352193"><img src="img/book.png" alt="書影" style="width: 240px"/></a></p>
<ul>
<li><a
href="https://www.amazon.co.jp/dp/4065352193">ゼロから学ぶGit/GitHub
現代的なソフトウェア開発のために</a></li>
</ul>
<h1 id="はじめに"><a
href="preface/index.html">はじめに</a></h1>
<h1 id="座学">座学</h1>
<h2 id="バージョン管理とは"><a
href="vcs/index.html">バージョン管理とは</a></h2>
<ul>
<li><a
href="https://speakerdeck.com/kaityo256/github-vcs">講義スライド</a></li>
<li>バージョン管理システムとは</li>
<li>バージョン管理システムの歴史</li>
<li>プログラミングができる人、できない人</li>
</ul>
<h2 id="gitの仕組みと用語"><a
href="term/index.html">Gitの仕組みと用語</a></h2>
<ul>
<li><a
href="https://speakerdeck.com/kaityo256/github-term">講義スライド</a></li>
<li>プロジェクト</li>
<li>リポジトリとワーキングツリー</li>
<li>コミット</li>
<li>インデックスとステージング</li>
<li>HEADとブランチ</li>
<li>マージ</li>
</ul>
<h2 id="コマンドラインの使い方"><a
href="command/index.html">コマンドラインの使い方</a></h2>
<ul>
<li><a
href="https://speakerdeck.com/kaityo256/github-cli">講義スライド</a></li>
<li>シェルとコマンドライン</li>
<li>Unixコマンド</li>
<li>Vimの使い方</li>
</ul>
<h2 id="gitの基本的な使い方"><a
href="basics/index.html">Gitの基本的な使い方</a></h2>
<ul>
<li><a
href="https://speakerdeck.com/kaityo256/github-basics">講義スライド</a></li>
<li>初期設定</li>
<li>Gitの一連の操作</li>
<li><code>git init</code></li>
<li><code>git add</code></li>
<li><code>git commit</code></li>
<li><code>git diff</code></li>
<li><code>git log</code></li>
<li><code>git config</code></li>
<li><code>.gitignore</code></li>
</ul>
<h2 id="ブランチ操作"><a
href="branch/index.html">ブランチ操作</a></h2>
<ul>
<li><a
href="https://speakerdeck.com/kaityo256/github-branch">講義スライド</a></li>
<li>なぜブランチを分けるか</li>
<li>ブランチの基本</li>
<li>マージ</li>
<li>リベース</li>
</ul>
<h2 id="リモートリポジトリの操作"><a
href="remote/index.html">リモートリポジトリの操作</a></h2>
<ul>
<li><a
href="https://speakerdeck.com/kaityo256/github-remote">講義スライド</a></li>
<li>リモートリポジトリとは</li>
<li>ベアリポジトリ</li>
<li>クローン</li>
<li>プッシュ</li>
<li>フェッチ</li>
<li>上流ブランチとリモート追跡ブランチ</li>
<li>その他知っておいた方が良いこと
<ul>
<li><code>git remote</code></li>
<li><code>git pull</code></li>
<li>プッシュしたブランチをリベースしない</li>
</ul></li>
</ul>
<h2 id="sshによる認証"><a
href="ssh/index.html">SSHによる認証</a></h2>
<h2 id="gitの使い方応用編"><a
href="advanced/index.html">Gitの使い方(応用編)</a></h2>
<ul>
<li><a
href="https://speakerdeck.com/kaityo256/github-advanced">講義スライド</a></li>
<li>Gitトラブルシューティング
<ul>
<li>コミットメッセージを間違えた(<code>git commit --amend</code>)</li>
<li>修正を取り消したい(<code>git restore</code>)</li>
<li>ステージングを取り消したい(<code>git restore --staged</code>)</li>
<li><code>git checkout</code>は使わない</li>
<li>リモートを間違えて登録した(<code>git remote remove</code>)</li>
<li>メインブランチで作業を開始してしまった(<code>git stash</code>)</li>
<li>プッシュしようとしたらリジェクトされた</li>
<li>頭が取れた(<code>detached HEAD</code>)</li>
<li>リベースしようとしたら衝突した</li>
</ul></li>
<li>その他の便利なコマンド
<ul>
<li>この部分はいつ誰が書いた?(<code>git blame</code>)</li>
<li>このバグが入ったのはいつだ?(<code>git bisect</code>)</li>
</ul></li>
</ul>
<h2 id="gitの中身"><a
href="internals/index.html">Gitの中身</a></h2>
<ul>
<li><a
href="https://speakerdeck.com/kaityo256/github-internals">講義スライド</a></li>
<li><code>.git</code>ディレクトリの中身</li>
<li>Gitのオブジェクト
<ul>
<li>blobオブジェクト</li>
<li>コミットオブジェクト</li>
<li>treeオブジェクト</li>
</ul></li>
<li>Gitの参照
<ul>
<li>HEADとブランチの実体</li>
<li>Detached HEAD状態</li>
<li>ブランチの作成と削除</li>
<li>リモートブランチと上流ブランチ</li>
</ul></li>
<li>インデックス
<ul>
<li>インデックスの実体と中身</li>
<li>ブランチ切り替えとインデックス</li>
</ul></li>
</ul>
<h1 id="演習">演習</h1>
<h2 id="gitの操作基本編"><a
href="practice_basic/index.html">Gitの操作(基本編)</a></h2>
<ul>
<li><a
href="https://speakerdeck.com/kaityo256/github-practice-basic">講義スライド</a></li>
<li>初期設定</li>
<li>リポジトリの作成(<code>git init</code>)</li>
<li>インデックスへの追加(<code>git add</code>)</li>
<li>ファイルの修正</li>
<li>自動ステージング(<code>git commit -a</code>)</li>
<li>歴史の確認(<code>git log</code>)</li>
<li>VSCodeからの操作</li>
<li>余談:データベース”ふっとばし”スペシャリスト</li>
</ul>
<h2 id="gitの操作応用編"><a
href="practice_advanced/index.html">Gitの操作(応用編)</a></h2>
<ul>
<li><a
href="https://speakerdeck.com/kaityo256/github-practice-advanced">講義スライド</a></li>
<li><code>git amend</code>によりコミットが変更されることを確認する</li>
<li><code>git merge</code>の衝突を解決する</li>
<li><code>git rebase</code>により歴史を改変する</li>
<li><code>git rebase</code>の衝突を解決する</li>
<li><code>git bisect</code>を使ってみる</li>
<li>余談:OSの系譜とドラマ</li>
</ul>
<h2 id="githubの操作基本編"><a
href="practice_github_basic/index.html">GitHubの操作(基本編)</a></h2>
<ul>
<li><a
href="https://speakerdeck.com/kaityo256/github-practice-github-basic">講義スライド</a></li>
<li>GitHubアカウントを作成とSSH接続</li>
<li>ローカルのリポジトリをGitHubに登録</li>
<li>Issue管理</li>
<li>Projectの利用</li>
<li>プルリクエストを作ってみる</li>
<li>余談:天空の城のセキュリティ</li>
</ul>
<h2 id="githubの操作応用編"><a
href="practice_github_advanced/index.html">GitHubの操作(応用編)</a></h2>
<ul>
<li><a
href="https://speakerdeck.com/kaityo256/github-practice-github-advanced">講義スライド</a></li>
<li>MNISTの学習済みモデルをウェブで試す</li>
<li>簡単なゲーム作成</li>
<li>余談:CEOからのメッセージ</li>
</ul>
<h1 id="おわりに"><a
href="postface/index.html">おわりに</a></h1>
<h1 id="参考文献"><a
href="references/index.html">参考文献</a></h1>
<h1 id="ライセンス">ライセンス</h1>
<p>Copyright (C) 2021-present Hiroshi Watanabe</p>
<p>この文章と絵(pptxファイルを含む)はクリエイティブ・コモンズ
4.0 表示 (CC-BY 4.0)で提供する。</p>
</article>
</body>
</html>