RSS ジュリア・エヴァンス

Git ブランチ:直観と現実

Follow
多くの人が、git ブランチを親ブランチからの分岐と直感的に捉えます。ただし、git は内部的にブランチを、単に "分岐" したコミットではなく、すべての前のコミットの完全な歴史として定義します。このため、すべてのブランチが同じ完全な歴史を含みます。内部的に、ブランチは最新のコミット ID を含むテキスト ファイルとして保存されます。git がブランチの関係性の概念を欠いているにもかかわらず、リベース、メルジ、GitHub プル リクエストがどのように動作するかという直感的なモデルと一致します。ただし、git のブランチとブランチの間に階層がなく、分岐コミットを分離するための非慣用的な UI が混乱を招く場合があります。GitHub のデフォルト ブランチには特別な特権があり、git の階層的な中立性にもかかわらず "特別なブランチ" の概念を強調します。
favicon
jvns.ca
git branches: intuition & reality
Create attached notes ...