使用 git-filter-repo --subdirectory-filter 后更新 git 存储库



>我使用以下方法将工具文件夹提取到它自己的存储库中:git-filter-repo --subdirectory-filter path/to/tools

同时,在原始存储库中进行了新的提交。

我希望能够定期将更改合并到我的过滤存储库中。 我唯一能想到的是再次克隆原始存储库(带有更改),再次对其应用子目录过滤器,将其作为远程添加到我的存储库中,然后从那里挑选/合并分支。每次有小变化时,都要执行很多。我认为可能有一种聪明的方法可以从主存储库创建过滤的补丁,然后将其应用于过滤的补丁,但我的 git 技能还不够。

有人能想出更好的方法来做到这一点吗?

由于如果您在完全相同的历史记录上运行两次git filter-repo将重新创建完全相同的提交(您通过测试确认了它),因此您可以简单地使用git merge来集成新提交,这些提交将显示为先前提取的提交的后代。