gpt4 book ai didi

git - 还原 merge 还原

转载 作者:行者123 更新时间:2023-12-04 07:41:27 34 4
gpt4 key购买 nike

我以这种方式恢复了 merge 提交(功能->开发):

git revert -m 1 <merge-commit-hash>
git push origin develop
已创建新提交 Revert "Merge branch 'feature'"现在我想恢复那个恢复。我应该只使用以下命令: git revert <revert-merge-branch-commit-hash> ?

最佳答案

不幸的是,在大多数情况下,答案可能是。是的 . (您应该还原还原提交。)
我说“不幸的是”,因为回想起来,这两个还原一起为您的历史添加了不必要的(并且可能令人困惑的)提交。这里有两种可能的替代方案:

  • 重置分支并强制将其推出。这会导致更清晰的历史记录,但对于共享远程分支,例如 develop ,条件必须接近完美才能考虑在紧急情况之外这样做。 (我的意思是近乎完美:分支上没有新的提交,自从添加了错误的提交和/或其他人不太可能从它分支出来之后的时间很短,等等。)
  • 您可以重新创建最初 merge 的分支,然后使用 git rebase --no-ff [merge-base-commit] 从开始提交将其重新定位到自身上。 .这将强制 rebase 重写提交,以便可以重新 merge 它们。如果新的提交被添加到之前的分支中,我可能会选择这个,现在它已经准备好再次被引入。

  • 但一般来说,大多数时候,在共享远程 develop ,它可能会被revert the revert。

    关于git - 还原 merge 还原,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67433104/

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