改变底层回购地址
我有一个项目,我添加了一个git子模块到一个已过时的repo分支。 而不是指向那个分支,我决定改变子模块的引用来指向原始的仓库。
我编辑了.gitmodules
文件以反映新的引用,并运行git submodule init
和git submodule update --recursive
但是没有效果,我在这里丢失了一个步骤吗?
neevek提到.git/config
,以及git config
的文档证实:
子模块..路径子模块。子模块..更新
此项目中的路径,URL以及子模块的更新策略。
这些变量最初由git submodule init
填充; 编辑它们以覆盖.gitmodules
文件中的URL和其他值 。
所以:
.gitmodules
的值是不够的( .git/config
的URL将具有优先权)。 git submodule init
不会改变.git/config
现有信息 (这就解释了为什么你的命令没有任何可见的效果)。 然后,您可以在
.git/config
为您的本地设置定制子模块克隆URL并继续进行git submodule update
。 我个人发现这个网址重复有点令人困惑......
链接地址: http://www.djcxy.com/p/92319.html上一篇: changing underlying repo address
下一篇: How to push a modification on a git submodule without giving username/password