我只找到了如何使用git子树拆分存储库的答案 . 但是,我明确地想要子模块 .
这是一个Java maven项目 . 目前,一切都在一个maven项目和一个存储库中 . 我的目标是实现这样的目标:
根存储库应该包含主要的pom.xml,系统文档等 . 然后应该有一些子模块,一个用于实用程序库,一个用于主应用程序,依此类推 . 子模块是它们自己的maven项目,从根存储库中的主maven项目引用 . 根存储库不包含任何源代码 .
我可以从当前的HEAD创建新的东西,但对我来说重要的是提交历史记录尽可能完整 .
1 回答
这正是你需要做的 . 使用
git subtree --split <path>
将"main"拆分为分支,然后为每个子模块添加远程并将分支推送到远程 .设置完所有子模块后,将它们添加到“主”仓库中