git的撤销操做:reset、checkout和revert
这三个命令均可以用于撤销。
reset和checkout能够做用于commit或者文件,revert只能做用于commit。git
git checkout readme.txt git checkout . git checkout -- readme.txt // 以防判断成分支
git reset HEAD git reset HEAD <readme.txt>
git reset HEAD~2 git reset --hard HEAD~100 //往上100个版本
还有几个参数可选
--soft:只撤销了git commit操做,保留了git add操做
--mixed:撤销了git commit, git add操做
--hard:撤销了至工做区segmentfault
git revert HEAD~
git revert <普通commitId>
git revert <merge commitId> -m <parent> 必须选择合并自哪一个分支,通常为 1,2,可经过git show <merge commitId> 展现
revert经过新建一个commit来撤销一次commit所作的修改,是一种安全的方式,并无修改commit history。安全
git reset HEAD~ git push -f
参考连接:Git 之 revertspa
git reflog // 查看commitId git reset commitId
git clean git clean -n //告诉你哪些文件会被删