操作して学ぶ
gitコミットグラフ可視化
commit ・branch ・checkout ・merge を1ステップずつ再生し、 コミットの親子リンク(DAG)とブランチ・HEADのポインタがどう動くかを追えます。 gitの「なんとなく怖い」が、「ブランチはただのポインタ」だと腑に落ちます。
$ git commit -m "最初のコミット"
まだ何も無いところに最初のコミット c1 ができ、ブランチ main と HEAD がそれを指します。
1 / 9
ここが分かる
git branchはコミットを1つも作らず、「今のコミットを指すポインタ」を増やすだけ。git checkoutは HEAD を別のブランチへ動かすだけ。だから軽い。- コミットは親へのリンクを持ち、履歴は有向非巡回グラフ(DAG)になる。マージコミットは親を2つ持つ。