我已经建立了一个带有子模块的git存储库。 我可以告诉子模块自己更改其远程存储库路径,但我不知道如何告诉父存储库如何更改子模块的远程存储库路径。 git
若是我有点不幸而且必须手动操做,我不会感到惊讶,由于即便删除子模块也不容易。 github
什么对我有用(在Windows上,使用git版本1.8.3.msysgit.0): vim
git submodule init
和git submodule update
完成全部这些以后,一切都处于我指望的状态。 我认为存储库的其余用户在更新时会有相似的痛苦 - 在提交消息中解释这些步骤是明智的! 编辑器
这些命令将在命令提示符下完成工做,而不会更改本地存储库上的任何文件 url
git config --file=.gitmodules submodule.Submod.url https://github.com/username/ABC.git git config --file=.gitmodules submodule.Submod.branch Development git submodule sync git submodule update --init --recursive --remote
请查看博客中的屏幕截图: 将GIT子模块更改为URL / Branch到同一存储库的其余URL /分支 spa
git config --file=.gitmodules -e
打开默认编辑器,您能够在其中更新路径code
简单来讲,您只须要编辑.gitmodules文件,而后从新同步和更新: rem
经过git命令或直接编辑文件: get
git config --file=.gitmodules -e
要不就: 同步
vim .gitmodules
而后从新同步和更新:
git submodule sync git submodule update --init --recursive --remote
您应该只能编辑.gitmodules
文件来更新URL,而后运行git submodule sync
以反映对超级项目和工做副本的更改。