Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 从历史记录中删除合并的拉取请求_Git - Fatal编程技术网

Git 从历史记录中删除合并的拉取请求

Git 从历史记录中删除合并的拉取请求,git,Git,几天前合并了一个拉请求,我们决定整个事情都需要解决 在这次行动之后,我做出了一些承诺,我想保留这些承诺 下面是我提交图的截图。我要删除的有问题的提交是19fdbd1 我试图使用git rebase 19fdbd1来实现这一点,但由于该功能仍然存在,因此没有达到预期效果。不过,我很可能做得不对 使用git-rebase-i来准确指定要如何删除提交。 (也就是说,这听起来更像是git revert的工作)git revert——交互式19fdbd1 现在,在出现的vim或编辑器终端中,在19fdbd

几天前合并了一个拉请求,我们决定整个事情都需要解决

在这次行动之后,我做出了一些承诺,我想保留这些承诺

下面是我提交图的截图。我要删除的有问题的提交是
19fdbd1

我试图使用git rebase 19fdbd1来实现这一点,但由于该功能仍然存在,因此没有达到预期效果。不过,我很可能做得不对


使用
git-rebase-i
来准确指定要如何删除提交。 (也就是说,这听起来更像是git revert的工作)

git revert——交互式19fdbd1

现在,在出现的
vim
或编辑器终端中,在
19fdbd1
旁边,输入:

squash 19fdbd1提交消息

现在,
git push-f origin BRANCH\u NAME

轰<代码>19fdbd1从未存在过

但是,如果希望其他提交id完全相同,则不能直接删除
19fdbd1
,必须执行以下操作:

git revert
19fdbd1

这将创建一个新的提交,该提交将清除
19fdbd1

然后简单地
git推原始分支\u NAME


注意这里没有
-f
,因为我们没有重写提交历史记录,只是从一个特定的提交中删除了更改。

您的意思是从提交历史记录中删除提交,对吗?我非常确定,除非您的
git
gui具有特定的命令/工具,否则您无法使pull请求消失。(我是根据我在GitHub的经验说的)正确,“删除合并的pull请求”是我应该说的。好吧。。。好的,您可以通过查看下面的答案从合并的请求中删除提交。从像Github这样的GUI中,您不能使拉取请求消失。