我有一个位于
的git存储库(我将其称为ml
)
ssh://ml-fey/usr/projects/data/nuclear/mc/type1
此存储库有一个子模块。 .gitmodules
文件看起来像这样
[submodule "Appendix"]
path = Appendix
url = /usr/projects/data/nuclear/mc/type1/Appendix
我可以将存储库克隆到新的存储库(我将其称为XL
),但是当我尝试更新子模块时出现此错误
$ git submodule update
Cloning into 'Appendix'...
fatal: '/usr/projects/data/nuclear/mc/Appendix' does not appear to be a git repository
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Clone of 'ssh://ml-fey/usr/projects/data/nuclear/mc/Appendix' into submodule path 'Appendix' failed
请注意,搜索Appendix
子模块的目录缺少最终的type1
目录。 git无法更新XL
中的子模块的原因是因为ssh://ml-fey/usr/projects/data/nuclear/mc/Appendix
不存在。 type1
去了哪里?
.gitmodules
存储库的XL
文件如下所示:
[submodule "Appendix"]
path = Appendix
url = /usr/projects/data/nuclear/mc/type1/Appendix
答案 0 :(得分:7)
您的.git/config
文件中也会调出子模块。网址是否正确?如果没有,您可以使用git submodule sync
进行同步。
答案 1 :(得分:0)
我还没有足够的声誉,所以我把它作为新的答案。在子模块目录而非父git根目录中执行命令git submodule sync
。