git子模块同步不起作用
我试图根据这些说明更改子模块上的远程设备。
修改并保存.gitmodules
,然后执行git submodule sync
我的子模块没有改变,尽管我的.git/config
文件已被更新以匹配.gitmodules
中的新远程URL。
我也尝试了git submodule sync --recursive
,并且按照这个提示做了rm -rf .git/modules/<mySubmodule>
,没有任何区别。 事实上,运行后者的命令,然后再次git submodule sync
给予fatal: Not a git repository: ../.git/modules/<mySubmodule>
。 有小费吗?
我最初通过git submodule add git://<mySubmodule-url>
到项目中,按照git文档。
编辑
我甚至通过自制软件更新了git到v2.1.1,仍然没有。 我也尝试从头开始,甚至在两个完全不同的子模块之间切换,但我仍然得到相同的结果。 总共:
$> mkdir myRepo
$> cd myRepo
myRepo$> git init .
myRepo$> git submodule add https://<path/to/my/repo>.git
myRepo$> vim .gitmodules
# change submodule url to https://<path/to/another/repo>.git
myRepo$> git submodule sync # updates my .git/config file with the new submodule url, but all my files in the submodule are still from the old url
myRepo$> git submodule sync --recursive # doesn't do anything
myRepo$> git submodule update --init --recursive # doesn't do anything either
myRepo$> rm -rf .git/modules/<mySubmodule> # tip from SO comment linked above
myRepo$> git submodule sync
fatal: Not a git repository: ../.git/modules/<mySubmodule>
这看起来很烦人。 不理想,但以下似乎为我工作
git submodule foreach git pull --rebase
链接地址: http://www.djcxy.com/p/92315.html
上一篇: git submodule sync doesn't work
下一篇: Git submodule add: "a git directory is found locally" issue