例如,可能选项的文本表示是什么?版本控制叫什么?
What is the textual representation of possible options for e.g. versioning called?
我相信我不久前读过一些东西,关于一种表示可能选项的方法,例如版本控制。
假设我们有以下可能对 GIT 发布分支进行版本控制。
- release-1.0.0-alpha
- release-1.0.0-beta
- release-1.0.0
数字当然可以不同。可以这样写:
release-[major.minor.patch](-beta|-alpha)
。 (我不确定这是不是正确的表示法)。
其中前三个选项(主要、次要和补丁)是必需的。 beta 和 alpha 是可选的。可以选择 beta 或 alpha 的地方。
我的问题是,这种表示法叫什么?我尝试 google,但由于我不知道这种类型的符号叫什么,所以很难找到任何东西。
我不确定你的问题。
如果您指的是有关版本控制约定的名称,则称为语义版本控制 (https://semver.org/)
如果您指的是用于表达可能的可选、强制或重复元素的符号...它们都是 正则表达式 符号的简化 subset/variation。
我认为正确的做法应该是:
release-<major>.<minor>.<patch>[-alpha|-beta]
在这种情况下,我使用 angular 方括号 ('<' '>') 表示非终端元素,方括号 ('[' ']') 表示可选性,以及竖线 ('|' ) 来表示备选方案。
-- 评论后编辑:
如果您要定义的 "language" 非常复杂,最好使用 BNF (https://en.wikipedia.org/wiki/Backus%E2%80%93Naur_form)
来表达它
我相信我不久前读过一些东西,关于一种表示可能选项的方法,例如版本控制。
假设我们有以下可能对 GIT 发布分支进行版本控制。
- release-1.0.0-alpha
- release-1.0.0-beta
- release-1.0.0
数字当然可以不同。可以这样写:
release-[major.minor.patch](-beta|-alpha)
。 (我不确定这是不是正确的表示法)。
其中前三个选项(主要、次要和补丁)是必需的。 beta 和 alpha 是可选的。可以选择 beta 或 alpha 的地方。
我的问题是,这种表示法叫什么?我尝试 google,但由于我不知道这种类型的符号叫什么,所以很难找到任何东西。
我不确定你的问题。
如果您指的是有关版本控制约定的名称,则称为语义版本控制 (https://semver.org/)
如果您指的是用于表达可能的可选、强制或重复元素的符号...它们都是 正则表达式 符号的简化 subset/variation。
我认为正确的做法应该是:
release-<major>.<minor>.<patch>[-alpha|-beta]
在这种情况下,我使用 angular 方括号 ('<' '>') 表示非终端元素,方括号 ('[' ']') 表示可选性,以及竖线 ('|' ) 来表示备选方案。
-- 评论后编辑:
如果您要定义的 "language" 非常复杂,最好使用 BNF (https://en.wikipedia.org/wiki/Backus%E2%80%93Naur_form)
来表达它