gpt4 book ai didi

git - 还原 git merge 提交,然后还原还原

转载 作者:太空狗 更新时间:2023-10-29 12:55:39 25 4
gpt4 key购买 nike

我们的团队使用 Github Pull Requests 来管理我们的工作流程,很像 what is described here .在手动审查已接受的 merge 请求后,我们有时需要恢复该 merge ,因为它尚未准备好部署到我们的生产服务器。

但是,如果开发人员再次尝试发出 Pull Request,它不会认识到这些更改已被还原,并且会看到提交已经在 master 分支中。它只会包括自恢复以来他们最近的提交,但我们真正想要的是重新引入所有已恢复的提交,以及他们的新工作。换句话说,我们喜欢重新发布原始 Pull Request 的方法。

由于 Github 不支持此功能(即既不还原 merge ,也不撤消/重新发出原始 pull 请求),我目前正在还原已还原的 merge 。这感觉不对。

在 git 中我可以使用哪些其他方法来实现相同的目标? (或 Github,如果可能的话)

最佳答案

我认为您的问题出现在这里是因为当您处理 pull 请求时,您选择在 GitHub 上自动 merge 它们。在处理 pull 请求的三种建议方法中 described in the documentation你正在使用最后一个(“自动 merge ”),它只是 recently implemented .就我个人而言,我认为这仅适用于显然正确的琐碎 pull 请求。对于更复杂的事情,我想使用第一种方法,即

  • 将请求者的存储库添加为新的远程
  • 从远程获取
  • 尝试 merge
  • 仔细测试
  • 如果你满意就推送结果

这意味着 merge 后的版本只有在您测试并决定推送后才会公开。如果你不想,你可以将你的主分支重置到它以前的位置。


有趣的是,如果您确实最终不得不恢复令人遗憾的 merge ,但仍希望可以选择稍后重新 merge ,会发生什么,这可能值得多说该分支的版本。虽然可能感觉不对,但据我了解,处理这种情况最简单的方法确实是还原还原。您可以在 this post from the Pro Git blog 中找到关于此问题的更多讨论。和 another discussion of the same problem由 Linux Torvalds 编写,这也可能有帮助。

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

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