美文网首页开源工具技巧
git diff的具体用法浅析

git diff的具体用法浅析

作者: 心试 | 来源:发表于2020-01-04 16:12 被阅读0次

    所有用法

    Git分为 工作区暂存区仓库

    git add#把工作区内容放入暂存区
    
    git commit#把暂存区内容提交到仓库
    
    git diff#查看工作区与暂存区差异
    
    git diff --cashed#查看暂存区与仓库差异
    
    git diff HEAD#查看工作区与仓库差异
    

    以新建文件流程从头开始

    1. 在工作区新建一个文件(内容为一行文字)

      vim new.txt
      
    2. 查看工作区与暂存区区别==(此时暂存区没有东西)==

      git diff new.txt
      

      结果为空(没有区别)

    3. 将文件提交到暂存区

      git add new.txt
      

      此时暂存区内容与工作区一致,还是没有区别

    4. 修改工作区文件内容(添加一行)

      vim new.txt
      
    5. 可以查看一下目前的所有区状态

      git status
      

      显示为:

      ​ 第一个版本的new未commit

      ​ 第二个修改版本的new未add+commit

      (==注意此时若commit则提交的是未修改的第一版==)

      各区情况:

      • 工作区为修改后的两行内容
      • 暂存区为第一次存入的一行内容
      • 仓库为空
    6. 查看工作区与暂存区的区别

      git diff new.txt
      

      结果为新添加的一行

    7. 查看暂存区与仓库的区别

      git diff --cached -- new.txt
      

      因为仓库为空,所以结果为第一版的一行

    8. 查看工作区与仓库的区别

      git diff HEAD -- new.txt
      

      仓库为空,结果为修改后的两行

      ==到这里应该基本明白了三种diff的区别==

      可以用9-10练习

    9. 提交在暂存区的第一个版本

      git commit -m "first version"
      

      此时工作区为修改后未add的第二版

      暂存区为空

      仓库为第一版

    10. 继续练习下面的命令,先根据自己的判断猜测结果

      git status
      git diff --cached -- new.txt#为空
      git diff HEAD -- new.txt#为后添加的一行
      
    11. 另外的两个反向命令

      git checkout#撤销工作区修改,把暂存区最新版本放入工作区
      git reset HEAD#把仓库最新版本放入暂存区,也可以把暂存区退回到工作区
      

    相关文章

      网友评论

        本文标题:git diff的具体用法浅析

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