4

これに対する答えを見つけるのに問題があったので、後世のために投稿しています。

状況は、サブモジュール (svn 外部に似ています) を持つ git リポジトリを持っていることです。その参照を更新して、外部リポジトリ内の別のコミットを指すようにします。「git submodule sync」または「git submodule update」がそれを行うと思うかもしれませんが、それは間違いです。

4

2 に答える 2

4

手順は次のとおりです。

  • サブモジュールがある実際のディレクトリに cd します。
  • 「git pull origin」などを実行して、新しいコミットに設定します。
  • そのディレクトリ (おそらくリポジトリ ルート) から cd を実行し、"git status" を実行します。ディレクトリが変更されていることがわかります。diff を実行すると、次のように表示されます。
diff --git a/default/bin/hdvcs b/default/bin/hdvcs
インデックス bbd3f56..7c9394c 160000
--- a/default/bin/hdvcs
+++ b/デフォルト/ビン/hdvcs
@@ -1 +1 @@
-サブプロジェクト コミット bbd3f56898054e533e81b52b90b94155841b40a8
+ サブプロジェクト コミット 7c9394c8520e41a704e6658360064758b20a3dfc
  • この変更をコミットします。
于 2010-02-16T23:57:08.047 に答える
1

すべての git サブモジュールをリモート リポジトリの HEAD に更新する場合は、次のように入力します。

git サブモジュール foreach git pull オリジン マスター

于 2011-01-05T13:33:14.373 に答える