如何从分支历史记录中删除提交?我应该使用git reset-hard HEAD吗?


当前回答

在本地分支上重置

git reset --hard HEAD~<Number of commit> So git reset --hard HEAD~3

强制推至原点

git push -f origin

其他回答

另一种可能是我个人最喜欢的命令之一:

git rebase -i <commit>~1

这将在您要执行的提交之前以交互模式-i启动重新启动。编辑器将开始列出此后的所有提交。删除包含要删除的提交的行并保存文件。Rebase将完成剩下的工作,只删除该提交,并将所有其他提交重新播放到日志中。

要在本地分支中删除,请使用

git reset --hard HEAD~1

要在远程分支中删除,请使用

git push origin HEAD --force

将代码备份到临时文件夹。以下命令将重置服务器。

git reset --hard HEAD
git clean -f
git pull

如果要保留更改并删除最近的提交

git reset --soft HEAD^
git pull

git reset—软Id提交允许您删除提交,但不删除当前文件。然后使用git push-f源名称分支

在我的情况下,我对这只小狗的魔法代码是这样的:

git reset --hard @{u}

测试一下,告诉我。我试过几种不同的方法,但只有这一种对我有帮助。