Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.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_Github - Fatal编程技术网

如何从远程撤消git恢复?

如何从远程撤消git恢复?,git,github,Git,Github,因此,我将一个旧分支,test,从remote合并到一个项目中,这是一个pull请求,它使项目停止工作。然后,在远程状态下,我返回到合并并选择“恢复”使其重新工作。不幸的是,旧的远程分支“test”表示它现在落后于“3commits”,来自该分支的代码在GitHub GUI上无法与主分支进行比较 我是否应该为已经合并的旧分支“test”创建一个新副本,并在修复错误后执行一个新的Pull请求?我尝试了本地的一切,测试分支仍然有我想要的所有更改。谢谢。您可以将您的主机重置为最后一个工作提交,但会有一

因此,我将一个旧分支,
test
,从remote合并到一个项目中,这是一个pull请求,它使项目停止工作。然后,在远程状态下,我返回到合并并选择“恢复”使其重新工作。不幸的是,旧的远程分支“test”表示它现在落后于“3commits”,来自该分支的代码在GitHub GUI上无法与
主分支进行比较


我是否应该为已经合并的旧分支“test”创建一个新副本,并在修复错误后执行一个新的Pull请求?我尝试了本地的一切,测试分支仍然有我想要的所有更改。谢谢。

您可以将您的主机重置为最后一个工作提交,但会有一点小麻烦,即拥有最新主机分支签出的所有其他用户都应该运行以下两个命令[因为主机分支的git历史已更改]

$ git fetch
$ git reset --hard origin/master 
将分支设置回原始状态的步骤如下:

$ git reset HEAD~n --hard 
$ git push origin master -f
将上面的
n
替换为要从头部删除的提交数<代码>-f
是强制推送,因为现在本地主目录树与远程主目录树不同


我已经做过很多次了,而且它总是有效的:)

您可以将您的主机重置为最后一次工作提交,但有一点小麻烦,即所有其他最新签出主机分支的用户都应该运行以下两个命令[因为主机分支的git历史记录已更改]

$ git fetch
$ git reset --hard origin/master 
将分支设置回原始状态的步骤如下:

$ git reset HEAD~n --hard 
$ git push origin master -f
将上面的
n
替换为要从头部删除的提交数<代码>-f是强制推送,因为现在本地主目录树与远程主目录树不同


我已经做过很多次了,而且总是很有效:)

我想我们可能需要看一个分支图来了解这里发生了什么。另外,当您返回到remote并进行恢复时,是删除合并提交,还是只进行新的提交以撤消合并?我认为我们可能需要查看分支图来了解这里发生的情况。另外,当您返回到remote并进行恢复时,是删除合并提交,还是只进行新的提交以撤消合并?