Git删除推送提交

Lol*_*lly 4 git github

我在我的项目中使用git存储库.我不小心推了2个我不应该提交的提交.在某些人之间已经做出了承诺.是否可以删除我推送的提交,或者我必须删除我的代码更改并将其作为新提交推送,因为有人已经提交了它.

Git Master分支:

由我提交一个//

承诺B //由我

由某人提交C //

现在我必须删除提交A和B离开提交C.任何帮助将非常感谢.

eis*_*eis 5

您必须恢复这些提交。

从技术上讲,它的作用是删除这些更改并进行新的提交,撤消它们。

现在,恢复它们将使它们留在历史记录中,但通常这是可以的。如果这是完全不可接受的,那么只能考虑过滤器分支和强制推送等解决方案。


Kon*_*nst 5

git reset --hard HEAD~1
Run Code Online (Sandbox Code Playgroud)

其中HEAD~1表示在head之前提交.

或者找到你想要的提交的提交id(查看git log的输出),然后执行以下操作:

git reset --hard <sha1-commit-id>
Run Code Online (Sandbox Code Playgroud)