如何在 Git 中分离子目录但保留所有分支

2024-02-07

我一直在关注这个问题的答案将子目录分离到单独的 Git 存储库中 https://stackoverflow.com/questions/359424/detach-subdirectory-into-separate-git-repository并在仅在一个分支上的简单子目录方面取得了一些良好的成功,但现在我面临着一个散布在多个分支上的子目录,因此一个简单的子目录

git filter-branch --subdirectory-filter SUBDIRECTORY HEAD

不做这项工作。

我是否必须切换到每个分支并运行filter-branch命令,或者是否有什么东西可以通过完整的历史记录进行空白更改?


The HEAD命令末尾指定要处理的引用。您可以给它任意数量的其他命令,包括--all绝对指定一切,--branches仅指定分支,或者--remotes仅指定遥控器。您可能必须在这些选项前加上前缀--告诉过滤器分支这些是 rev-list args。注意--all将尝试显式处理标签,这可能不是您想要的。你可以使用--branches --remotes来指定所有非标签引用。您可能还想添加--tag-name-filter cat重写指向重写提交的标签 - 您的原始命令将使这些标签保持不变。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Git 中分离子目录但保留所有分支 的相关文章

随机推荐