git 修改操做如何撤销?

0.问题

分红两个问题:git

  • git add 以后如何撤销?
  • git commit 以后如何撤销?

1.解决办法

1.0 未add且想丢弃修改的文件

好比说,如今有个文件本地修改了,可是远端 master 库结果也修改了该文件。这样若是强行拉取,就会出现一个冲突,解决这个冲突的方法之一能够是 以远端的修改成主,放弃本地的修改, 那么就能够直接用命令git checkout -- filename 。若是想所有丢弃,那么就能够使用git checkout . 命令。web

1.1 git add 操做撤销

执行命令:git restore --staged filename就能够将已经add可是还没有commit的文件回到初始态。svg

1.2 git add 操做撤销

若是执行了commit 命令以后,当前的库状态已经超过了git远端库的状态,这个时候若是想丢弃修改,怎么回到原来的状态呢?3d

  • step 1. 回到原始的状态,执行命令:
    git reset --soft HEAD^ 【注意后面的^不能少了】执行完以后,就能够回到最开始还没有commit的状态了。
    在这里插入图片描述
  • step 2.执行git restore --staged filename即可以将其回到既没有commit,也没有add的状态。
    在这里插入图片描述