关于git diff HEAD消息的解释是否正确?

时间:2014-08-21 09:29:00

标签: git github git-diff

我正在做一个git教程,我想有人告诉我,如果我对这条消息的解释是正确的:

$ git diff HEAD

diff --git a/octocat.txt b/octocat.txt
index 7d8d808..e725ef6 100644
--- a/octocat.txt           
+++ b/octocat.txt           
@@ -1 +1 @@                 
-A Tale of Two Octocats
+[mA Tale of Two Octocats and an Octodog

如果我理解得很好,该命令会告诉你最后一次提交与当前时刻之间有什么区别,对吗?

diff --git a/octocat.txt b/octocat.txt

此行告诉您octocat.txt已被修改。我不知道的是a/b/的意思。

--- a/octocat.txt           
+++ b/octocat.txt           

与行对齐 - 它是修改前的文档,与+++对齐是指修改后的文档。

@@ -1 +1 @@                 

这是一个统一的差异标识符。统一格式用于显示文件之间的变化,对吗?我不是英国人,我想确定我理解它。

-A Tale of Two Octocats
+[mA Tale of Two Octocats and an Octodog

最后,这里显示删除的内容和添加的内容。

谢谢;)

1 个答案:

答案 0 :(得分:1)

a/b/只是用于区分旧文件和新文件,它们是虚拟标识符(diff --git file file没有多大意义)。否则你的分析就在现场!

来自git diff手册页:

  

git diff [--options] <commit> [--] [<path>...]
     此表单用于查看工作树中的更改      相对于命名的<commit>。您可以使用HEAD将其与之进行比较      最新提交,或与分支名称进行比较的分支名称      不同的分支。

尽管在大多数情况下,您更有可能只使用git diff(没有任何参数)来显示工作副本中的更改,但尚未添加到索引中(在其他单词:&#34;尚未上演&#34;)。

  • git diff HEAD:显示尚未提交的跟踪文件的每次更改
  • git diff:显示相对于索引的变化(即尚未上演)