gpt4 book ai didi

git - 通过 pull 请求撤消 merge ?

转载 作者:IT王子 更新时间:2023-10-29 01:20:09 27 4
gpt4 key购买 nike

有人接受了他们不应该接受的 pull 请求。现在我们 merge 了一堆损坏的代码。如何撤消 pull 请求?我正打算在 merge 之前将更改还原到提交,但我注意到它 merge 在一堆提交中。所以现在有这个人在 merge 前几天的所有这些提交。如何撤消此操作?

最佳答案

有一个better answer对于这个问题,虽然我可以一步一步地分解它。

您需要像这样获取和检查最新的上游更改,例如:

git fetch upstream
git checkout upstream/master -b revert/john/foo_and_bar

查看提交日志,您应该会发现类似这样的内容:

commit b76a5f1f5d3b323679e466a1a1d5f93c8828b269
Merge: 9271e6e a507888
Author: Tim Tom <tim@tom.com>
Date: Mon Apr 29 06:12:38 2013 -0700

Merge pull request #123 from john/foo_and_bar

Add foo and bar

commit a507888e9fcc9e08b658c0b25414d1aeb1eef45e
Author: John Doe <john@doe.com>
Date: Mon Apr 29 12:13:29 2013 +0000

Add bar

commit 470ee0f407198057d5cb1d6427bb8371eab6157e
Author: John Doe <john@doe.com>
Date: Mon Apr 29 10:29:10 2013 +0000

Add foo

现在您想要还原整个 pull 请求并能够稍后取消还原。为此,您需要获取 merge 提交 的 ID。

在上面的例子中,merge commit 是最上面的那个,上面写着“Merged pull request #123...”

执行此操作以还原两个更改(“添加栏”“添加 foo”),您最终将在一次提交中还原整个 pull 请求您可以稍后取消还原并保持更改历史记录干净:

git revert -m 1 b76a5f1f5d3b323679e466a1a1d5f93c8828b269

关于git - 通过 pull 请求撤消 merge ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6481575/

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