美文网首页Git使用Git
2016-10-09 Git 基础(四) - 撤销操作

2016-10-09 Git 基础(四) - 撤销操作

作者: 重剑无锋_Augustine | 来源:发表于2016-10-11 18:05 被阅读70次

    情形一:提交完之后发现漏掉了几个文件没有添加,或者提交信息写错了。

    使用命令:git commit --amend

    git commit -m 'first commit'
    git add forgotten_file
    git commit --amend
    

    情形二: 取消暂存的文件

    使用命令:git reset HEAD <file>

    例如:已经修改了两个文件并且想要将它们作为两次独立提交,但是却意外的输入了 git add . 暂存了他们两个。如何取消其中一个?git status 命令已经提示了: git reset HEAD <file>

    ➜  git_test git:(master) ✗ git add .
    ➜  git_test git:(master) ✗ gst
    On branch master
    Changes to be committed:
      (use "git reset HEAD <file>..." to unstage)
    
        modified:   1
        modified:   2
    
    ➜  git_test git:(master) ✗ git reset HEAD 1
    Unstaged changes after reset:
    M   1
    ➜  git_test git:(master) ✗ gst
    On branch master
    Changes to be committed:
      (use "git reset HEAD <file>..." to unstage)
    
        modified:   2
    
    Changes not staged for commit:
      (use "git add <file>..." to update what will be committed)
      (use "git checkout -- <file>..." to discard changes in working directory)
    
        modified:   1
    

    情形三:撤销对文件的修改

    使用命令: git checkout -- <file>...

    如果要放弃修改,将它还原成上次提交的样子,git status 也提示了怎么去做.

    注意 该命令是个危险的命令,你对文件的任何修改都会消失,你只是拷贝了另一个文件来覆盖它。除非你确实清楚不想要那个文件了,否则不要用这个命令。

    ➜  git_test git:(master) ✗ git checkout -- 1
    ➜  git_test git:(master) ✗ gst
    On branch master
    Changes to be committed:
      (use "git reset HEAD <file>..." to unstage)
    
        modified:   2
    

    相关文章

      网友评论

        本文标题: 2016-10-09 Git 基础(四) - 撤销操作

        本文链接:https://www.haomeiwen.com/subject/yiybyttx.html