我正在寻找有关合并三个 Git 存储库的建议或警告。我需要维护提交历史和所有分支。
我已经检查了这个问题和这个问题,似乎“git-subtree”命令会做我想要的,但似乎该命令已被删除或其他东西(评论似乎在这个问题上发生冲突。)那里是一个“git subtree”命令,但我不确定它的作用,而且文档很薄。
我有三个 Git 存储库,每个存储库都包含一个 Maven 项目。文件和存储库根本不重叠(例如,没有一个项目是任何其他项目的 Git 子模块。)它们是完全独立的,除了 B 和 C 中引用 A 的代码:
ProjectA.git
pom.xml
/src/....
ProjectB.git
pom.xml
/src/...
ProjectC.git
pom.xml
/src/...
我想将它们合并到一个“父”存储库中:
Parent.git
/ProjectA
pom.xml
/src/...
/ProjectB
pom.xml
/src/...
/ProjectC
pom.xml
/src/...
我需要维护提交历史和所有分支,但我对将各个存储库作为子模块或单独的存储库维护不感兴趣。事实上,如果他们在这个过程之后离开会更好,这样人们就不会继续使用它们了。
这样做的最简单和最可靠的方法是什么?有没有一种方法可以访问 git-subtree 命令(我正在使用 Git 1.8.0 在 Windows 7 上运行)或没有该命令的情况下进行此合并的方法?