我目前有一个包含多个项目的庞大git仓库,每个项目都在其自己的子目录中。我需要将其拆分成单独的仓库,每个项目在其自己的仓库中。
我尝试了git filter-branch --prune-empty --subdirectory-filter PROJECT master
然而,许多项目目录在它们的生命周期中经历了几次重命名,而git filter-branch
不会跟随重命名,因此提取出的仓库实际上没有任何历史记录超过最后一次重命名。
如何有效地从一个庞大的git仓库中提取一个子目录,并跟踪该目录的所有重命名到过去?
git-filter-repo
的解决方案,因为现在它已经被推荐用来替代git-filter-branch
。 - Martin Thøgersen