我有一个存储库,其中包含我的主项目和一个可选模块,它应该真正属于自己的回购。我想要做的是将这个模块移动到它自己的repo中,理想情况下保留它的历史记录,并且引用一个回到主存储库的引用,这样最新的代码仍然可以被引入它。
为了说明,我的回购看起来像这个
Main repo
├── Core code
├── Mandatory module
├── Optional module dependencies
└── Optional module core
我希望它看起来像这样
Main repo
├── Core code
└── Mandatory module
New repo
├── Optional module dependencies
├── Optional module core
└── <reference to Main repo>
我设法收集git子树似乎是要走的路,但我发现的指南和示例指示如何将项目移动到新的repo中,并且引用它仍然存在于主要的,这不是我想要做的。