19

我正在学习 Git ,一直找不到 标志语法 任何 解释

我不是指“裸双破折号”

--

正如我们所知,这表明以下内容不是一种选择。我指的是各种实际标志,有时有一个破折号,有时有两个。

git log -2 -p -U1 --graph

带有一个破折号和两个破折号的标志有什么区别?双破折号表示什么?

例如,以下两个标志是相同的,(根据 this):

-q
--quiet

为什么破折号的数量不同?如果我输入了错误的号码怎么办?

4

1 回答 1

21

我的理解是 git 遵循标志的“标准”Linux 约定。那是:

  • 一个短划线表示“短”标志:通常是一个字符标志,但有时标志带有单个字符,然后是表示标志参数的其他字符(例如git log -SFoo,其中Foo-S标志的参数)。这些标志可能是也可能不是其他更长标志的缩写形式。
  • “长”标志的两个破折号:多字符标志,通常是英文单词。=如果这些标志接收参数,则通过符号(例如)将其与标志分开git log --author=Peter

这就是“为什么”:它是嵌入在 Linux 世界中的约定。Git来自这个世界,所以它遵循约定。“长标志的两个破折号,一个短标志的一个破折号”规则应该指导您使用多少个破折号作为标志。

至于为什么会有重复的短和长标志,例如--quietand -q,只是为了提供助记方便或简洁的选择。--quiet更容易记住,但-q如果你习惯的话,打字和心理解析会更快。例如,我输入git commit -m "...blah"得太频繁了,如果我每次都必须通过输入将命令的长度加倍,我会很紧张git commit --message='...blah'

在给定两个破折号和一个破折号的情况下,我没有遇到任何表现不同的 git 标志,因此通常如果您为一个破折号标志输入两个破折号,反之亦然,不会发生任何不可挽回的坏事,git 只会抱怨您的标志和没做什么。

当然,git 有大量的命令,每个命令都有大量的标志,因此所有这些规则都可能存在例外。他们通常应该持有。

于 2013-08-08T23:33:25.820 回答