【发布时间】:2021-07-31 07:52:26
【问题描述】:
根据this SO question,Git 手册页是从 Git 文档自动转换的(不使用 mdoc 或 groff),因此某些用法语法和手册页不符合 POSIX Utility Argument Syntax。
例如:
man git-config
列表
git config [<file-option>] [type] --add name value
在“Synopsis”下(根据 POSIX 语法,这应该在名为“Usage”的标题下,Git 手册页中“Description”标题下的内容应该在名为“Synopsis”的标题下)和name并且value 应该出现在<>s 中以表明它们是占位符。
更令人困惑,
man git-rebase
列表
git rebase [-i | --interactive] [<options>] [--exec <cmd>]
[--onto <newbase> | --keep-base] [<upstream> [<branch>]]
git rebase [-i | --interactive] [<options>] [--exec <cmd>] [--onto <newbase>]
--root [<branch>]
git rebase (--continue | --skip | --abort | --quit | --edit-todo | --show-current-patch)
根据 POSIX 语法,git rebase 可以在没有任何选项或参数的情况下成功运行,但事实并非如此。
由于 Git 文档不包含任何有关如何阅读命令行用法语法的部分,我如何理解 git rebase 的用法语法?是否应该将<branch> 放在[] 之外以正确表明它实际上是命令的非可选参数?
【问题讨论】:
-
git rebase可以在没有选项或参数的情况下运行,这是一种常见用法。也许花更多时间理解内容并尝试命令将有助于理解它们。 -
@jthill 你能告诉我
git rebase在没有参数的情况下运行的用法吗?我以前从未见过。 -
@jthill 我现在看到
git rebase可以在没有参数的情况下运行,尽管我发现自动模式很危险(更多信息请参见stackoverflow.com/questions/50643026/…)。但是,问题仍然存在于 git config 的手册页上。如果使用语法不一致,而我们要阅读命令描述,则不需要使用语法。事实上,它增加了混乱。
标签: git command-line syntax