情况一:checkout

当你修改了某个文件,未提交暂存区,回退本次修改

git checkout -- file

情况三:reset

当你的代码,已提交到暂存区,还未提交到远程仓库

  • git log 查看提交日志
#启动--pretty=oneline参数表示只显示hash值和提示
git log --pretty=oneline
  • git reset执行回退
#当前commit节点回退一个commit
git reset --hard HEAD^

#当前commit节点回退两个commit
git reset --hard HEAD^^

#当前commit节点回退10个commit,N个写N
git reset --hard HEAD~10

#当前commit节点回退到具体某个commit
git reset --hard 64d597b

Git在内部有个指向当前版本的HEAD指针,当你回退版本的时候,Git仅仅是把HEAD从指向指定的commit节点

  • git reflog查看工作区的操作记录
git reflog
posted on 2017-07-31 14:56  行走在云端的愚公  阅读(570)  评论(0编辑  收藏  举报