zoukankan      html  css  js  c++  java
  • 8.Git撤销修改

    有一个文件内容如下:
        $ cat README.md
        the first ...
        the second ...
        the third ...
    

    - 文件自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态.

    1.删除最后一行内容:`the third ...`
    	$ vi README.md
    	
    	$ cat README.md
        the first ...
        the second ...
    
    2.执行命令`git status`
    $ git status
    On branch dev
    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:   README.md
    no changes added to commit (use "git add" and/or "git commit -a")
    
    3.通过上面结果,可以发现,Git会告诉我们,git checkout -- file可以丢弃工作区的修改
    	$ git checkout -- README.md
    
    4.执行命令`README.md`查看恢复后文件内容
        $ cat README.md
        the first ...
        the second ...
        the third ...
    

    - 文件已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态.

    1.删除最后一行内容:`the third ...`
    	$ vi README.md
    	
    	$ cat README.md
        the first ...
        the second ...
    
    2.执行命令`git add`添加到缓存区
    	$ git add README.md
    
    3.执行命令`git status`
        $ git status
        On branch dev
        Changes to be committed:
          (use "git reset HEAD <file>..." to unstage)
                modified:   README.md
    
    4.执行命令`git reset HEAD README.md`
        $ git reset HEAD README.md
        Unstaged changes after reset:
        M       README.md
    
    5.执行命令`git status`
    $ git status
    On branch dev
    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:   README.md
    no changes added to commit (use "git add" and/or "git commit -a")
    
    6.通过上面结果,可以发现,Git会告诉我们,git checkout -- file可以丢弃工作区的修改
    	$ git checkout -- README.md
    
    7.执行命令`cat README.md`查看恢复后文件内容
        $ cat README.md
        the first ...
        the second ...
        the third ...
    
    总结:
    git checkout -- file命令中的--很重要,没有--,就变成了“切换到另一个分支”的命令,我们在后面的分支管理中会再次遇到git checkout命令.
    
  • 相关阅读:
    C# Attribute(中)——Attribute本质论
    计算机体系结构-内存调优IPC OOMK
    RHCA-RH442-Linux系统性能调优 (学习)
    Redhat 官方Performance_Tuning_Guide
    linux 内核官方文档
    运维博客---OOM
    lenky的个人站点 ----LINUX 内核进程
    kswapd0、kjournald、pdflush、kblocked、migration进程含义 转
    计算机体系结构 -内存优化vm+oom
    计算机体系结构-CPU
  • 原文地址:https://www.cnblogs.com/apollo1616/p/10440130.html
Copyright © 2011-2022 走看看