如何将主仓库中的文件和文件夹移动到现有子模块中?我可以以某种方式保存历史吗?
答案 0 :(得分:1)
假设你的repos只有一个分支:拿你的子模块仓库,把你的主仓库添加为第二个远程,获取历史记录并删除除了所选文件之外的所有内容。将结果合并到主存储库分支。
在这里"删除"可能意味着两件事。一个简单的git rm
将创建一个干净的HEAD,但删除的文件将保留在历史记录中。或git filter-branch
能够创建仅包含所选文件的新历史记录。
在您的主存储库中,您有基本相同的选项。使用git rm
删除HEAD中已移动的文件,或使用git filter-branch
将其从整个历史记录中删除。