チーム開発をしていると他のメンバーもリモートリポジトリを更新してきますので、時間が経つにつれて自分のローカルリポジトリとリモートリポジトリの内容がかけ離れていきます。
従って定期的にプルを実行して自分のローカルリポジトリとリモートリポジトリの内容の乖離をなるべく最小に保つように心がけると良いと思います。

※ 今回は説明していませんが、実際のチーム開発では origin/main に直接プッシュするより、「ブランチ機能」や「プルリクエスト機能」を使って並行作業することも多いです

ではAさん、Bさん、Cさんはプルを実行し、全員が同じ内容となっている状態7にして下さい。

※ 前のページで説明した様に、衝突が無ければ Git が更新内容を自動的にマージしてくれます


状態 7 (README.md と HEAD 以前のコミットは省略)


Aさん


ワーキングツリー
hoge.txt
name?
D
C
B
A


インデックス
hoge.txt
name?
D
C
B
A


ローカルリポジトリ
HEAD
hoge.txt
name?
D
C
B
A
"merged D and ABC"
Bさん


ワーキングツリー
hoge.txt
name?
D
C
B
A


インデックス
hoge.txt
name?
D
C
B
A


ローカルリポジトリ
HEAD
hoge.txt
name?
D
C
B
A
"merged D and ABC"
Cさん


ワーキングツリー
hoge.txt
name?
D
C
B
A


インデックス
hoge.txt
name?
D
C
B
A


ローカルリポジトリ
HEAD
hoge.txt
name?
D
C
B
A
"merged D and ABC"
Dさん


ワーキングツリー
hoge.txt
name?
D
C
B
A


インデックス
hoge.txt
name?
D
C
B
A


ローカルリポジトリ
HEAD
hoge.txt
name?
D
C
B
A
"merged D and ABC"
リモートリポジトリ(origin/main)
HEAD
hoge.txt
name?
D
C
B
A
"merged D and ABC"