1

私が理解しているように、Git は、現在の HEAD からその親を経由してルートに至る変更を追跡することによって、リポジトリの現在の状態を把握します。

マージ コミットには、次のように 2 つの親がありC6ます。

git-scm book からのマージ コミットの例

[ソース]

このように複数の親を持つことの利点、理論的根拠などを理解しています。

しかし、ここで歴史をさかのぼる方法がわかりません。あなたの頭がmasterブランチの先端にあり、一度に 1 つのコミットをさかのぼると、Git はそのC6「本当の」親がであることをどうやって知るのC5でしょうか? コミットファイルに保存されている順序のようなものですか?

それとも私は何かを誤解していますか?これは Git が行うことではありませんか?

4

1 に答える 1