git撤销一次错误的commit
2016-12-08 本文已影响131人
慧惠
问题一:手一抖,多提交了几个垃圾文件,怎么办?
赶紧提交回滚:

问题二:手又一抖,发现本来只要再提交一次就能解决问题一的,现在又提交了回滚,怎么办?
右击“错误的提交”,选择“重置到这一次提交”,回到编辑器执行“discard all changes”。撤销回滚。

问题三:残了,回到“错误的提交”之后,明明只有一次提交,但是push还是2次?为什么呢?

于是乎引出了这篇文章的主题:
怎么移除了不想要的commit之后,把那些commit对应的push也移除掉呢?
请移步到终端,进入项目根目录,输入以下命令行。
//commit id代表你要重置到的commit 的id
git reset --hard 16d36fde09afb0b3443b6a8567a825bee5981c8a(commit id)
怎么看一个commit的id呢用:
git log
其实问题到这儿就应该已经解决了,push数目等了一会儿就恢复成了1,但是在网上搜索到的资料一般在reset命令行完了之后会跟上强制push的命令。这句命令根据个人情况而定要不要执行。
git push origin master --force
