git 两个破折号意味着没有更多选项

Posted

技术标签:

【中文标题】git 两个破折号意味着没有更多选项【英文标题】:git two dashes means with no more options 【发布时间】:2013-07-21 23:31:17 【问题描述】:

我正在学习try git by code school,对单元1.17使用命令行撤消它

git checkout -- octocat.txt

然后octocat.txt是一个文件,它解释了两条虚线是

它只是向命令行承诺没有更多选项 之后 ' - '。这样,如果您碰巧有一个名为 octocat.txt,它仍然会还原文件,而不是切换到 同名的分支。

但我无法理解的是,没有选项意味着什么? 又既然后面没有选项,为什么还能通过文件和分支区分呢?

【问题讨论】:

【参考方案1】:

-- 表示停止处理选项,即使某些东西看起来像一个选项,例如--help,它应该被当作普通参数,而不是文件名。

使用这种语法,您实际上可以添加或删除名为--help 的文件,否则这是不可能的。

在 git 语法中,-- 通常也用于指定受影响的文件。例如,git checkout something 可能表示名为 something 的检出分支或名为 something 的文件。如果你使用git checkout -- something,它总是意味着文件,而不是分支。

【讨论】:

以上是关于git 两个破折号意味着没有更多选项的主要内容,如果未能解决你的问题,请参考以下文章

在 argparse 中有一个带有破折号的选项

argparse 长选项的单破折号

第三章

ffmpeg 命令中的“破折号”选项有啥作用?

Git 常用命令

Select2 :仅适用于一个选择选项,但不适用于两个或更多选择选项