我正在为我的项目添加一个子模块,其中包含另一个git repo。
要获得我运行的模块:
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
)重新克隆了项目。但是,如果我能够让子模块首先以递归方式拉入,那将会更容易。有没有办法做到这一点?
答案 0 :(得分:0)
可能的原因可能是github.com/cadorn/firephp-libs提到的事实:
这个项目已经转移到以下的储存库:
https://github.com/firephp/firephp
https://github.com/firephp/firephp-core
因此,您可能希望先更新.gitmodules
debug-toolbar
git submodule update --init
文件(--recursive
之后,而不是git submodule update --init --recursive
部分),然后 >,再试一次git submodule --recursive
)
提交,然后是递归克隆 - 哪个有效。
原始答案:
其中一个子模块(.gitmodules
file)的路径定义似乎不正确:
作为相对路径,当从父代仓库执行的{{1}}命令克隆/更新时,它将无法成功解析,其中所述相对路径无效。