1

我正在向我的项目添加一个包含另一个 git 存储库的子模块。

要获取我运行的模块:

git submodule add git://github.com/biakaveron/debug-toolbar.git modules/debug-toolbar

然后跑:

git submodule update --init --recursive

这产生了这个错误:

fatal: Not a git repository: ../../../../../../..//d/websites/project/.git/modules/modules/debug-toolbar/modules/vendor/firephp
Failed to recurse into submodule path 'modules/debug-toolbar'

我以前也遇到过类似的问题。以前我只是添加了子模块,然后使用递归标志 ( ) 重新克隆了项目git clone --recursive project.git。但是,如果我可以让子模块首先递归地拉入会更容易。有没有办法做到这一点?

4

1 回答 1

1

一个可能的原因可能是github.com/cadorn/firephp-libs提到:

该项目已移至以下存储库:

https://github.com/firephp/firephp
https://github.com/firephp/firephp-core

所以你可能想先更新.gitmodules文件debug-toolbar(在 a 之后git submodule update --init,没有--recursive部分),然后,再试一次git submodule update --init --recursive

OP做了:

提交,然后是递归克隆 - 有效。


原答案:

似乎其中一个子模块(在.gitmodules文件中)的路径定义不正确:
作为相对git submodule --recursive路径,当通过从父存储库完成的命令克隆/更新时,它不会成功解析,所述相对路径是无效的.

于 2013-01-27T11:15:21.423 回答