2012-01-11 6 views
6

私は自分のプロジェクトでgitサブモジュールを参照していますが、ターゲットgitリポジトリ内の特定のSHAを参照する必要があります。私が欲しいGitサブモジュール:特定のSHAを指定しますか?

# .gitmodules 
[submodule "vendor/plugins/ssl_requirement"] 
    path = vendor/plugins/ssl_requirement 
    url = git://github.com/retr0h/ssl_requirement.git 

SHAはbc96ad96407a72a60e0542cf3b0cecc6ff9e278eです。

答えて

20

サブモジュールは、定義上、常にサブプロジェクト内の特定のSHA1を参照します。 SHA1は.gitmodulesファイルでは表現されませんが、サブモジュールを含むツリーオブジェクトのエントリとして表現されます。 gitでこれを設定する方法は、サブモジュールにcdを入れて、あなたが望むSHA1をチェックアウトしてから、親リポジトリに戻って変更をコミットします。変更されたファイルと同じように表示されます。だから、

あなたが何ができるかあなたのケースでは、

cd vendor/plugins/ssl_requirement 
git checkout bc96ad96407a72a60e0542cf3b0cecc6ff9e278e 
cd .. 
git add ssl_requirement 
# commit whenever you're ready 
+1

+1です。それはちょうど私がちょうど書いていたものです。サブモジュールがそのコミットの前に起源から最後にフェッチした場合、サブモジュールで 'git fetch'を実行してフェッチする必要があるかもしれません。 – Cascabel

+0

ありがとう、完璧な意味がある! – Zubin

関連する問題