首页 > 解决方案 > 修复 git repo 中移动的子模块?

问题描述

我有一个带有一些子模块的简单 git repo。

(repo_root)/versions/sub_module_a

我已将其移至sub_module_a更深的文件夹。现在回购看起来像这样:

(repo_root)/versions/rel/sub_module_a

然而,现在事情有点乱了,子模块结构似乎被打破了。我编辑了.gitmodules文件以试图反映路径更改,但没有运气。有没有办法用更新的层次结构重新初始化我的 git repo 并推送。

标签: git

解决方案


不要手动将子模块移动到新位置,而是使用git mv命令移动它,例如

cd /path/to/repo_root
mkdir -p versions/rel
git mv versions/sub_module_a versions/rel/

这样,Git 将为您处理所有“管道”。


推荐阅读