撤销操作
git checkout -- <filename>,放弃文件的当前更改,回到最近一次的提交状态git reset HEAD <filename>,取消暂存文件git commit --amend,覆盖上一次的提交,虽然不是撤销操作,但有类似的效果git rebase -abort,撤销一次rebase
回滚历史
git reset --hard HEAD^,回滚到上个版本,(^和~1等价,^^和~2等价,^~2相当于~3,以此类推)git reset --hard HEAD~2,回滚到前两个版本git reset --hard <SHA-1>,回滚到指定版本号,如果是版本号前几位,git会自动寻找匹配的版本号git reset --hard <tag>,回滚到指定标签的版本git reset --hard <SHA-1> <filename>,回滚某个文件到指定版本号
撤销历史
git revert HEAD,撤销最近一次的提交,并作为一次新的提交git revert HEAD~1,撤销最近两次的提交,并作为一次新的提交git revert <SHA-1>,撤销指定版本的提交,并作为一次新的提交