我知道这个问题已经被打死了。但是我仍然不清楚为什么我的子模块试图引用我的超级项目中的提交。我有一个项目,其中包含许多子模块,其中一些引用了我想要贡献的 github 存储库。更新模块后,我拉取模块的更改:
[ashinn@puppet1 puppet]$ cd 模块/神经节 [ashinn@puppet1 神经节]$ git 分支 *(无分支) 掌握 [ashinn@puppet1 ganglia]$ git pull origin master 远程:计数对象:8,完成。 远程:压缩对象:100% (4/4),完成。 远程:总共 6 个(增量 4),重复使用 4 个(增量 2) 拆包对象:100% (6/6),完成。 来自 https://github.com/andyshinn/puppet-ganglia * 分支主 -> FETCH_HEAD 通过递归进行合并。 自述文件 | 1+ 1 个文件已更改,1 个插入(+),0 个删除(-)
现在我想更新对超级项目中模块的引用:
[ashinn@puppet1 神经节]$ cd ../.. [ashinn@puppet1 puppet]$ git 添加模块/神经节 [ashinn@puppet1 puppet]$ git commit -m '更新的神经节模块' [神经节 c172591] 更新神经节模块 1 个文件更改,1 个插入(+),1 个删除(-)
我目前正在研究神经节分支,所以我将它推送到我的原点(这是 2 个不同的 URL):
[ashinn@puppet1 puppet]$ git push origin 神经节 计数对象:8,完成。 Delta 压缩最多使用 2 个线程。 压缩对象:100% (6/6),完成。 写入对象:100% (6/6),616 字节,完成。 总计 6 个(增量 4),重复使用 0 个(增量 0) 到 git@github.com:andyshinn/puppet.git 1876698..c172591 神经节 -> 神经节 计数对象:5,完成。 Delta 压缩最多使用 2 个线程。 压缩对象:100% (3/3),完成。 写入对象:100% (3/3),323 字节,完成。 总计 3(增量 2),重复使用 0(增量 0) 远程:来自 /var/lib/puppet/repo 远程:dcd1fcc..c172591 神经节 -> 起源/神经节 远程:来自 https://github.com/andyshinn/puppet-ganglia 远程:a0c4e21..975c92f master -> origin/master 远程:致命:参考不是树:c5defdeae006c7b87058cc5c79aef60087b63a6b 远程:无法在子模块路径“模块/神经节”中签出“c5defdeae006c7b87058cc5c79aef60087b63a6b” 远程:更新现有环境神经节 到 puppet@puppet.mydomain.com:repo dcd1fcc..c172591 神经节 -> 神经节
遥控器有一个接收后脚本,用于签出不同文件夹中的分支并git submodule update --init
为每个分支运行。如果我手动连接到原始存储库,我可以验证问题:
-bash-4.1$ git 拉 已经是最新的了。 -bash-4.1$ git 子模块更新 --init 致命:参考不是一棵树:c5defdeae006c7b87058cc5c79aef60087b63a6b 无法在子模块路径“modules/ganglia”中签出“c5defdeae006c7b87058cc5c79aef60087b63a6b”
我在这里做错了什么?