git舍弃文件更改

  1. 未进行任何提交,即文件更改在工作区
    1 # filename 对应进行操作的文件名
    2 git checkout -- filename
  2. 已用git add 命令提交,即文件更改在暂存区
    1 # 舍弃暂存区的修改,即回到第1种情况
    2 git reset HEAD filename
    3 # 舍弃所有更改
    4 git reset --hard HEAD
  3. 已用git add 和git commit 提交,即文件更改在分支
    1 #完全舍弃最后一次更改
    2 git reset --hard  HEAD^ 
    3 #舍弃更改至缓存区,即回到第2种情况
    4 git reset --soft HEAD^ 
    5 #舍弃更改至工作区,即回到第1种情况
    6 git reset HEAD^ 即 git reset --mixed HEAD^

     更新:

  4. 如果需要删除文件
    1 git rm filename #删除所有
    2 git rm --cached filename #仅在工作区保留

原文地址:https://www.cnblogs.com/lyg-blog/p/9047744.html