gpt4 book ai didi

git - 我如何编辑一个包含数百个 merge 和 merge 冲突的 Git 提交?

转载 作者:行者123 更新时间:2023-12-04 03:58:00 25 4
gpt4 key购买 nike

我需要在我的存储库历史的最开始处修改一个提交。自那次提交以来,可能有数百个分支、 merge 和 merge 冲突。

我尝试使用带有 --preserve-merges 选项的交互式 rebase ,但我仍然遇到数百个类似于“CONFLICT(内容):Foobar.cpp 中的 merge 冲突”的冲突错误。如果不是不可能的话,再次手动重新解析它们是非常不切实际的。

我听说过“rerere”功能,但只是现在才听说过,所以我还没有启用它。

最佳答案

Rerere 不会在这里帮助你。

您正在寻找 git filter-branch。根据您的更改,您可以使用比树过滤器更快的索引过滤器。通过这样做,您将更改所有后续的 SHA-1。

确保包含 --all 参数,以便更新所有引用。这将破坏任何使用此 repo 作为子模块的 repo,因为 SHA-1 将引用不存在的。您将需要编写更多脚本来修复该问题。

此外,如果与您一起工作的任何人有任何未提交的提交,他们将不得不 git rebase --onto 他们出色的工作到历史记录中的新位置。

在未来几年,我们希望看到更多对执行此类恶作剧的支持 - 特别是在涉及子模块时。

关于git - 我如何编辑一个包含数百个 merge 和 merge 冲突的 Git 提交?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14332719/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com