可能的重复:
“--”(双破折号)是什么意思?
git diff [options] [<commit>] [--] [<path>…]
在这里,我应该如何理解 [--] 的意思?我应该什么时候使用它。
jor*_*anm 21
在--
常用于命令用于指示的选项的结束。如果您的文件名以“-”开头或您的输入未知,这将很有用。以下是它的使用示例:
git diff --stat -- --file1 --file2
--file1
被视为文件名而不是另一个选项。
cjm*_*cjm 17
与往常一样,您应该阅读命令的联机帮助页以了解它如何解释其参数。
--
通常用于指示命令选项的结束。如果您想传递以-
.开头的文件名或其他参数,这尤其有用。在通配符之前使用它也是一个好主意,通配符可能会扩展为以连字符开头的文件名。(例如,尝试mkdir foo; cd foo; echo >-l; ls *; ls -- *
。)
但git diff
也使用它来指示参数是 a <commit>
(指示要修改的修订版)还是 a <path>
(指示要修改的文件)。它通常可以猜测,但值可能既是有效提交又是有效路径。在这种情况下,您可以使用git diff foo --
来指示这foo
是一次提交,或git diff -- foo
指示那foo
是一条路径。