git 回滚操作

 

情况一:文件被修改了,但未执行git add操作(working tree内撤销)

  1.  
    git checkout fileName
  2.  
    git checkout .

情况二:同时对多个文件执行了git add操作,但本次只想提交其中一部分文件

  1.  
    $ git add *
  2.  
    $ git status
  3.  
    # 取消暂存
  4.  
    $ git reset HEAD <filename>

情况三:文件执行了git add操作,但想撤销对其的修改(index内回滚)

  1.  
    # 取消暂存
  2.  
    git reset HEAD fileName
  3.  
    # 撤销修改
  4.  
    git checkout fileName

情况四:修改的文件已被git commit,但想再次修改不再产生新的Commit

  1.  
    # 修改最后一次提交
  2.  
    $ git add sample.txt
  3.  
    $ git commit --amend -m"说明"

情况五:已在本地进行了多次git commit操作,现在想撤销到其中某次Commit

git reset [--hard|soft|mixed|merge|keep] [commit|HEAD]
原文地址:https://www.cnblogs.com/blogphp/p/git_checkout.html