我有一个拥有存储库的项目。 我有回购的根文件夹,
/A
/A1
/A2
/B
/B1
我想将A文件夹分成另一个存储库,然后我想要另一个存储库,它看起来与上面描述的完全相同,但是我希望文件夹A是存储库的子模块,而不是文件夹A.我刚刚创建的。所以A是一个独立的项目,另一个repo依赖于子模块A,但也包含B.
我该怎么做?或者我是否必须创建一个丢失所有提交的全新项目?
谢谢!
答案 0 :(得分:0)
您可以克隆存储库并使用git filter-branch
从存储库中删除不需要的历史记录。之后,您可以将A作为子模块添加到B。
编辑:按照github指南操作后,执行
git filter-branch --tree-filter "rm -rf A" --prune-empty HEAD
从B中删除A的历史记录。
修改:This所以问题有一个全面的答案。