11

私は、git がコンテンツを追跡し、コンテンツに部分的に基づいて sha を生成することを知っています。ただし、sha も親コミットに基づいています。ブランチをリベースすると、コミットの祖先が異なるため、すべてのコミットの SHA が異なります。

しかし、私が疑問に思っているのは、2 つのコミット (またはコミット範囲) を比較して、内容が同じかどうかを確認する方法はありますか? これは、バイナリ変更も同じかどうかも判断できるはずです。

先祖情報を入れずにコンテンツの社を取得する方法があれば、それができるかもしれないと考えています。

助けてくれてありがとう、

4

4 に答える 4

0

コミット ヘッダーには、ファイル システムのコンテンツ (コンテンツ + 構造) であるツリー オブジェクトの sha が含まれています。それらを比較するスクリプトを書くのはそれほど難しくありません。

Blob には ID も含まれているため、1 つまたは 2 つのファイルを見ているだけであれば、それらを比較できます。

于 2012-07-12T19:20:02.647 に答える