📘
CS Education の学習ノート(後編)
The Missing Semester of Your CS Education (日本語版)
- 前半のリンク
9https://missing-semester-jp.github.io/
- 後半はGitについて触れられている。
- Gitに関しては以下の記事も参考になる。
Git
- Gitはソースコードの変更履歴を共有するバージョン管理ソフトである。
- ソースコードが保存されているリモートリポジトリからクローンを行うことで自分のローカルレポジトリで作業ができる。
ブランチ
- ブランチはソースコードの変更履歴を記録していき、分岐することもできる。
- 実態はコミットIDを指すポインタである。
-
git checkout [ブランチ名]でブランチを移動することができる。 - masterブランチはgitのデフォルトブランチ
- originはリモートレポジトリのURLのプレフィックスを示す(origin/[ブランチ名])
-
git fetch
-
git fetch [ブランチ名]でfetch先の変更履歴を確認できる。 - [ブランチ名]はデフォルトではoriginに設定されているのでリモートレポジトリの最新の履歴を確認することができる。
git pull
-
git fetch+git mergeを行う。 - デフォルトではgit pull origin master
HEAD
- HEADは現在作業をしているブランチを指している。
- HEADの移動は
git checkout [ブランチ名]で行う。 - HEADがブランチを指していない状態、detached HEADになると履歴の保存ができなくなる。
- HEADの移動は
git rebase -i
-
git rebase -i HEADでコミットをまとめることができる。 - コミットをまとめるとコミットハッシュ値が変わるので
git push -fが必要
git log
- コミットログを見るときに必要。
-
--graphオプションでブランチの分岐が見れる。 - ログを終えるには
qを押す。
-
git stash
-
git stash saveで現在の変更を保存し、git stash popで取り出せる。
Discussion