--- /dev/null
通过git show commit
输出表示什么?
这是一个新文件的添加,所以我假设它没有删除任何内容,但为什么引用/dev/null
?
$ git show a395a
commit a395a7bb4abcc606022ac14a07794b2d3c18bd5b
Author: David Banks <BanksySan@googlemail.com>
Date: Sun Apr 12 17:41:08 2015 +0100
My first commit.
diff --git a/test.txt b/test.txt
new file mode 100644
index 0000000..e965047
--- /dev/null
+++ b/test.txt
@@ -0,0 +1 @@
+Hello
答案 0 :(得分:10)
这意味着因为test.txt是一个新文件,在显示的差异中,它被比作“无”; “file”/ dev / null。
答案 1 :(得分:6)
你可以从Git本身的最开始就找到这种约定(差异对#34;没有文件&#34;)。
目标是更像cg-patch
Linux工具,它从文件,输入或提交中应用补丁。
见commit 2f97813,Git 0.99,2005年4月:
让
diff-cache
和朋友输出更多cg-patch
友好。这改变了构建diff的默认参数的方式 使用
-p
调用diff-cache和friends,但没有GIT_EXTERNAL_DIFF
环境变量。
它试图通过以下方式更加友好cg-patch
:
- 显示针对
/dev/null
的差异以表示添加或删除的文件;- 将现有文件的文件模式显示为diff标签后的注释。