本文详细解释了 Git 的 `--end-of-options` 标志的用途与正确用法,用于在传递可能以连字符开头的参数(如分支名或 URL)时安全终止选项解析。文章指出 Git 早期将 `--` 重新用于分隔修订版本与路径规范,因此该标志对消除歧义和提升脚本安全性至关重要。该功能自 Git 2.24 起逐步在各子命令中落地,部分命令因自定义解析器而延迟支持。
背景
Git 的命令行解析器使用 `--` 分隔选项与路径规范,当用户传入的修订版本或 URL 以连字符开头时会产生边界问题。`--end-of-options` 标志的引入旨在使 Git 符合 POSIX 选项解析惯例,并防止自动化脚本中出现选项注入漏洞。
- 来源
- Lobsters
- 发布时间
- 2026年7月21日 20:31
- 评分
- 7.0 / 10