git: change origin of cloned submodule
This apparently is very much dependent on the version of git you are using.
- If present, change the
url
entry in the[submodule "<dirname>"]
section of the.gitmodules
file. - If present, change the
url
entry in the[submodule "<dirname>"]
section of the.git/config
file. - Change the
url
in the configuration of the submodule itself. The location of theconfig
file is version dependent. Older versions had it in<dirname>/.git/config
, newer ones in.git/modules/<dirname>/config
. However, you can always use below command:
cd <dirname>
git config remote.origin.url <new_url>
In other question I found answer for more modern Git version (2.25)
git submodule [--quiet] set-url [--] <path> <newurl>
Let's assume that you have submodule in directory external/foo-lib
which origins is https://github.com/example-user/foo-lib.git
and you want to change it to yours fork https://github.com/your-account/foo-lib.git
then in root directory of git project type:
git submodule set-url external/foo-lib https://github.com/your-account/foo-lib.git