git がコミットでファイル全体を消去し、すべての行をもう一度書き換える理由を理解しようとしています。
その場合、すべての変更を正しく見つけることができません。
例:
元のファイル:
hello world
次に、新しい行を追加します。
(git の正しい動作は次のようになります:)
hello world
+ This is a new line
しかし、コミットでこれを経験することがあります。
-hello world
+hello world
+This is a new line
この例では、2 行しかないので、何が起こったのかを簡単に把握できます。ただし、これは大きなファイルで発生します。
この動作の原因は何ですか? また、同じコミットには、正しいファイル (変更された行のみを git が認識するファイル) と正しくないファイルが存在する可能性があります。