古いリポジトリのフォークに git サブモジュールを追加したプロジェクトがあります。そのフォークを指すのではなく、代わりに元のリポジトリを指すようにサブモジュール参照を変更することにしました。
.gitmodules新しい参照を反映するようにファイルを編集して実行しましたが、効果がgit submodule initありgit submodule update --recursiveません。ここで手順が不足していますか?
古いリポジトリのフォークに git サブモジュールを追加したプロジェクトがあります。そのフォークを指すのではなく、代わりに元のリポジトリを指すようにサブモジュール参照を変更することにしました。
.gitmodules新しい参照を反映するようにファイルを編集して実行しましたが、効果がgit submodule initありgit submodule update --recursiveません。ここで手順が不足していますか?
neevek が言及 .git/configし、ドキュメントのgit config確認:
submodule..path サブモジュール..url サブモジュール..update
このプロジェクト内のパス、URL、およびサブモジュールの更新戦略。
これらの変数は、最初に によって入力されgit submodule initます。それらを編集して、ファイル内の URL やその他の値をオーバーライドし.gitmodulesます。
そう:
.gitmodulesだけでは十分ではありません ( の URL.git/configが優先されます)。git submodule init、ドキュメントが言及しているように、既存の情報を変更しません.git/config(そして、コマンドが目に見える効果をもたらさなかった理由を説明しています)。.git/configに進みますgit submodule update。個人的には、この URL の重複は少しわかりにくいと思います...