多语言展示
当前在线:1132今日阅读:75今日分享:44

GIT学习--(8) GIT基本命令之 diff 详解

这篇经验,我们主要介绍一下 GIT 中的 diff 命令,这个命令主要用于比较仓库中不同版本之间的区别,通过这个命令我们可以看出两个版本之间的变化(如果你忘记了某次提交到底改了什么,可以通过这个命令和他前面的版本比一下,一切就都明白了)。
工具/原料

一台安装了GIT的电脑

方法/步骤
1

首先,直接运行 git diff 命令,会是什么情况呢?当前我们工作区和暂存区都没有任何变更,git diff 命令返回为空(图示),我们修改一下仓库中的文件内容,目前工作区存在变更,再次运行 git diff 命令,这次可以看到我们的变更了(图示),git diff 其实是看工作区和暂存区相比进行了哪些变更。

2

如果我们工作区改动了很多文件,一个 git diff 文件哗啦啦输出一大堆,混在一起根本分不清怎么办? git diff -- FileName1 FileName2 可以通过命令的这种形式针对性的比较某几个文件的变化,注意,文件名可以使用通配符 '*', 并且 git diff -- 后面有一个空格然后再写文件名。

3

有时我们将工作区的变更加到了暂存区(git add), 未提交,然后又在工作区进行了其他一些变更,这时一回头,忘记暂存区到底放了哪些变更了,这怎么办? git diff --cached 命令就是用于比较暂存区目前发生的变更,也可以说是暂存区和目前该分支的最新版本的差异(即HEAD指针指向的版本)

4

最后一种情况,当暂存区变更很多时,git diff --cached 也会哗啦啦输出一堆内容,视觉效果相当差劲,怎么办呢?同理,git diff --cached -- FileName1 FileName2 可以通过命令的这种形式针对性的比较某几个文件的变化,注意,文件名可以使用通配符 '*'

注意事项
1

git diff 比较工作区和暂存区 git diff --cached 比较的是暂存区和分支最新版本

2

git diff -- FileName 注意这个 -- 后面有一个空格

推荐信息