-1

コミット履歴を壊さずに git サブモジュールのリモート URL を変更するにはどうすればよいですか? 現在、古いコミットをチェックアウトすると、サブモジュールに古いリモート URL が存在しないようです。

私のワークフロー:

  1. コミット A、B でレポを複製する
  2. git サブモジュールの更新 --init
  3. サブモジュールの URL を変更
  4. .gitmodules をリモートにプッシュ (Commit C)

  5. コミット A、B、C でレポを複製する

  6. コミット A に切り替える
  7. git サブモジュールの更新 --init -> 失敗

-> 新しいサブモジュールのリモート URL も必要ですが、.gitmodules の古い URL も必要です

git submodule update --initまだ古いリモート URL を使用しようとしているようです

提案されているように も使用しようとしまし git submodule updateたが、エラーも発生しました:

The Git repository with name or identifier OLD_REPO_NAME does not exist or you do not have permissions for the operation you are attempting.

4

2 に答える 2

1

別のアプローチを試してみましょう。構成ファイル内の URL を置き換える代わりに、オンザフライで URL を置き換えます。

git config --global url.<NEW-URL>.insteadOf <OLD-URL>

git help configについて参照してくださいurl.<base>.insteadOf

于 2020-04-26T17:16:09.897 に答える