Git"致命:在.gitmodules中找不到路径的子模块映射。"但未找到子模块引用

时间:2017-02-23 17:27:41

标签: git git-submodules git-checkout

我已经撤下公司回购并开始工作;初始分支是master。在尝试git checkout时,我始终遇到以下错误(反斜杠=换行符)

git -c diff.mnemonicprefix=false -c core.quotepath=false -c \
    credential.helper=sourcetree checkout master 
Switched to branch 'master'
Your branch is up-to-date with 'origin/master'.  #so far, so good..


git -c diff.mnemonicprefix=false -c core.quotepath=false \
     -c credential.helper=sourcetree submodule update --init --recursive 
fatal: no submodule mapping found in .gitmodules for path 'vendor/omnipay/pin'
Completed with errors, see above

我已经搜索了这方面的答案,但所有这些都涉及在某处提到submodule的某些内容,包括this one here。但是:

  1. .git/config - 根本不包含对子模块的引用

  2. vendor/omnipay/pin - 此目录为空,不包含隐藏的点文件。

  3. 供应商/无所不知甚至供应商/中没有字符串submodule

  4. 同样,其他帖子似乎不适用,因为没有文件或子模块行可供引用/删除。这里有什么问题,如何解决?

1 个答案:

答案 0 :(得分:1)

返回160000提交04e778e9689882d4c4041​​9263014068b69b93168供应商/全方位付款/密码

它是“ gitlink”,是索引中的特殊条目,记录了嵌套Git存储库的根树的sHA1。
这就是文件夹显示为空的原因:它是嵌套存储库的占位符。

如果您有一个.gitmodules文件,应该有一个提及 where 的条目来查找应该在该路径中检出的远程存储库。

如果没有,请尝试至少使用git rm vendor/omnipay/pin(不带斜杠),然后再输入git submodule update --init --recursive