Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/25.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 将代码还原到Master中的上一个提交_Git - Fatal编程技术网

Git 将代码还原到Master中的上一个提交

Git 将代码还原到Master中的上一个提交,git,Git,我已将代码签入本地的主git repo,然后将其推送到源代码。只有1个这样的错误签入。本地和远程恢复上次提交的最佳方法是什么 我希望销毁历史记录。您可以使用git-rebase-I重写历史记录以删除该提交 如果是最近的提交,您也可以运行git reset--hard HEAD^ 然后可以运行gitpush-f重写远程历史记录。这将打断任何进行提交的人。如果您确定自提交后没有人从回购中提取/提取,请执行以下操作: git reset --hard HEAD~1 git push -f 但是,如果

我已将代码签入本地的主git repo,然后将其推送到源代码。只有1个这样的错误签入。本地和远程恢复上次提交的最佳方法是什么


我希望销毁历史记录。

您可以使用
git-rebase-I
重写历史记录以删除该提交 如果是最近的提交,您也可以运行
git reset--hard HEAD^


然后可以运行
gitpush-f
重写远程历史记录。这将打断任何进行提交的人。

如果您确定自提交后没有人从回购中提取/提取,请执行以下操作:

git reset --hard HEAD~1
git push -f

但是,如果有人已经获取/提取了,没有他们的合作,你就无能为力。在这种情况下,你最好的选择是做一个
git revert HEAD
,这将进行一次额外的提交,以撤销你的上一次提交。

这取决于你是否要销毁历史。是的,我更喜欢销毁历史的可能副本,我认为拥有10k声誉的人会更清楚;在再次询问相同的问题之前,先在google/stackoverflow上搜索…你确定HEAD^会给出删除最后一次提交吗?这不是git push origin master-f吗?@SachinKainth:
git reset
会将本地分支重置为指向该提交的分支
HEAD^
表示
HEAD
的直接上级。