Git diff 显示未提交更改的差异详细信息
本文概述了我们如何在 Git 中获取未提交工作的差异详细信息。 我们使用 git diff 命令来显示各种 Git 引用之间的差异,例如提交、索引和工作树。
我们可以使用该命令来显示未提交工作的详细信息,我们将在下面讨论。
显示 Git 中未提交更改的差异详细信息
为了更简单的上下文,我们将使用一个例子。 假设下图代表我们存储库中工作目录的当前状态。
以上两个文件都属于未提交的工作类别。 但是,git diff 命令对暂存文件和未暂存文件的作用不同。
为了看得更清楚,让我们从不带参数的基本 git diff 开始。
$ git diff
输出结果如下:
您会注意到不带参数的 git diff
命令只会显示未暂存文件的更改。 从 Git 文档中可以看出,不带参数的 git diff
命令将显示相对于索引的变化。
这些更改应该进入索引但尚未添加。
我们如何显示暂存文件的差异详细信息?
为了显示暂存文件的更改,我们使用 git diff 命令,如下所示。
$ git diff --cached
输出结果:
我们可以看到,将 --cached 标志添加到我们的 git diff
命令将显示暂存文件的差异详细信息。 确实如此,Git 文档指出 git diff --cached
将显示相对于当前提交 (HEAD) 的分阶段更改。
如果我们不想单独运行命令怎么办?
要显示暂存和未暂存更改的差异详细信息,请运行 git diff 命令,如下所示。
$ git diff HEAD
输出结果:
git diff HEAD
命令将显示工作目录和当前提交之间的差异详细信息。
提示
如果你在阅读上面的差异细节时遇到困难,你可以使用像 Meld 这样的第三方差异工具。
简而言之,我们可以操作 git diff 命令来显示未提交工作的差异详细信息,具体取决于文件的类别。 我们已经了解了如何在 Git 中显示暂存文件和未暂存文件的差异详细信息。
相关文章
使用 Git Diff 忽略 Git 中的空格
发布时间:2023/03/31 浏览次数:109 分类:Git
-
本文将讨论如何使用 git diff 命令忽略空格。 我们使用 git diff 来比较跨分支或修订的提交、分支和文件。
在 Git 中将文件差异化为任意版本
发布时间:2023/03/31 浏览次数:120 分类:Git
-
本文讨论了如何将单个文件与 Git 中的一个版本进行比较。 如果您的存储库的某个分支中有一个文件有 30 个迭代,您可以将当前版本与任何其他版本进行比较。
将 Meld 设置为 Git 的 Difftool 和 Mergetool
发布时间:2023/03/29 浏览次数:58 分类:Git
-
本文讨论了将 Meld 配置为 Git 的默认差异和合并工具的过程。