Git はサブモジュールのコミットの SHA1 をどこに保存しますか? 質問する

Git はサブモジュールのコミットの SHA1 をどこに保存しますか? 質問する

サブモジュールを Git リポジトリに追加すると、sha1 によって参照されるそのサブモジュールの特定のコミットが追跡されることがわかっています。

この sha1 値がどこに保存されているかを見つけようとしています。

およびファイルに.gitmodules.git/configサブモジュールのパスのみが表示され、コミットの sha1 は表示されません。

git サブモジュール(1)gitlink参照はエントリについてのみ言及しており、gitモジュール(5)参考文献にもこれについては何も書かれていません。

ベストアンサー1

これは Git のオブジェクト データベースに直接保存されます。サブモジュールが存在するディレクトリのツリー オブジェクトには、サブモジュールのコミットのエントリが含まれます (これはいわゆる「gitlink」です)。

試してくださいgit ls-tree master <path-to-directory-containing-submodule>(またはgit ls-tree masterサブモジュールが最上位ディレクトリにある場合のみ)。

おすすめ記事