IDEA 中 Undo Commit,Revert Commit,Drop Commit区别

一、Undo Commit

适用情况:代码修改完了,已经Commit了,但是还未push,然后发现还有地方需要修改,但是又不想增加一个新的Commit记录。这时可以进行Undo Commit,修改后再重新Commit。如果已经进行了Push,线上的Commit记录还是会存在的,简单来说,就是撤销了你Commit的这个动作

执行完成之后,你会发现刚刚提交的文件恢复到未提交的状态

二、Revert Commit

适用情况:代码修改完了,已经Commit了,已经push,然后发现本次提交不能提交。

三、Drop Commit(慎用)

未push的Commit记录:

会删除Commit记录,同时Commit中对代码进行的修改也会全部被删除

已push的Commit记录:

区别在于线上的Commit记录不会被删除

总结

是否删除对代码的修改 是否删除Commit记录 是否会新增Commit记录
Undo Commit 不会 未Push会,已Push不会 不会
Revert Commit 不会
Drop Commit 未Push会,已Push不会 不会