可能重复:
Rolling back local and remote git repository by 1 commit
如何从远程GIT存储库中删除最后一次提交,例如我在日志中不再看到它?
例如,git log
为我提供以下提交历史记录
A->B->C->D[HEAD, ORIGIN]
我怎么去
A->B->C[HEAD,ORIGIN]
感谢。
答案 0 :(得分:459)
请注意,这将为已经从远程存储库获取/拉取/克隆的人创建“替代现实”。但事实上,这很简单:
git reset HEAD^ # remove commit locally
git push origin +HEAD # force-push the new HEAD commit
如果您仍希望将其保存在本地存储库中并仅将其从远程存储库中删除,则可以使用:
git push origin +HEAD^:<name of your branch, most likely 'master'>
答案 1 :(得分:10)
如果没有人拉过它,你可能会做类似
的事情git push remote +branch^1:remotebranch
将强制将远程分支更新为分支的最后一次提交。