27

我刚刚用 egit 做了一些我想删除的错误提交。

我想删除一些错误的提交

如何从 egit 中删除提交?

谢谢!

编辑:我尝试了几次硬重置,但它没有做任何事情。 硬重置屏幕

编辑 2:硬重置确实回滚更改,但我希望它们从历史记录中完全消失,就好像我从未进行过这些提交一样。

4

3 回答 3

38

右键单击您的存储库,然后单击“显示在 -> 历史中”。您应该在最后一次“获取”之前选择最后一次提交......大多数情况下它是您当前 HEAD 下的第二次提交。RightMouse 在那个提交和“reset -> Hard”(将你的所有提交和本地工作区更改重置为选定的提交)。

您应该看到向上箭头变为向下箭头,这意味着您的提交已被删除并且您的存储库已过时。使用“fetch”和“rebase”来更新。

于 2012-12-10T08:37:00.083 回答
5

请注意,Kepler 中的 Egit3.0允许您硬重置为您想要的任何树状表达式:

在此处输入图像描述

但是一旦硬重置,你仍然需要git push --force在那之后:如果你不这样做,你的上游仓库的历史仍然会列出那个提交。

于 2013-06-14T08:23:40.863 回答
-1

您可以进行硬重置,但要小心!这里有更多信息:从 Git 的分支中删除提交

于 2012-11-23T18:45:59.563 回答