Git flow release分支和标签 - 带或不带"v"前缀

fri*_*mle 102 git naming-conventions git-flow

我在各种git flow相关网站上看到了多个矛盾的定义.是否有官方推荐或单一事实来源?

分支机构:release-1.2.3release-v1.2.3

标签:1.2.3v1.2.3

Tim*_*lla 88

好吧,基本上这是一个偏好的问题,但我更喜欢带有的版本v,因为Semver这样做,我尽量遵循该规范,以获得理智的版本.

它还可以更轻松地过滤这些标签,因为您可以按v,然后按TAB-key进行自动完成:这将列出所有标签(可能还有几个分支),而标签可以从几个数字开始.


另请参阅:git标记是否有标准命名约定?

  • Semver删除了版本2中的前缀*v*. (41认同)
  • @schmijos @LeoTM - 该文档仅声明v1.2.3不是语义版本.问题是关于Git标签.实际上,semver repo仍然使用`v2.0.0`作为版本2的标记:https://github.com/mojombo/semver/releases/tag/v2.0.0 (8认同)
  • 谢谢,这是有道理的.我认为有趣的是看到Git Flow项目本身没有**使用v前缀:https://github.com/nvie/gitflow由于你和@VonC发布的原因,我仍然更喜欢版本标签包括v前缀. (2认同)
  • semver 2.0 http://semver.org 没有说明需要以“v”前缀开头的标签! (2认同)

Von*_*onC 28

由于v代表版本,因此标记通常命名为vX.YZ,XYZ遵循语义版本2.0.0.

这允许分支XYZ与这些标签共存,而不必处理诸如"致命:不明确的对象名称"之类的错误消息(如" 带有GIT的模糊名称? ").

请注意,Git本身的标签最近已被"调整",原因很简单:请参阅" 代码版本更改"规则" ".

  • semver 2.0 http://semver.org没有说明以"v"前缀开头所需的标签! (3认同)
  • 当人们使用像 _semver_ 这样的最佳实践时,他们可能会使用像 _Git Flow_ 或类似的系统。这将防止引用冲突(分支 eq 标记名称)。除此之外,什么会阻止人们命名分支`vX.YZ`呢?这不是一个真正的争论:) (2认同)

小智 10

https://semver.org/#is-v123-a-semantic-version

\n\n
\n

\xe2\x80\x9cv1.2.3\xe2\x80\x9d 是语义版本吗?不,\xe2\x80\x9cv1.2.3\xe2\x80\x9d 不是语义版本。但是,在语义版本前面加上 \xe2\x80\x9cv\xe2\x80\x9d 是表示它是版本号的常用方法(英文)。\n \xe2\x80\x9cversion\xe2\x80\x9d 缩写为 \xe2\x80\x9cv\xe2\x80\x9d 经常出现在版本控制中。示例: git tag\n v1.2.3 -m "Release version 1.2.3",此时 \xe2\x80\x9cv1.2.3\xe2\x80\x9d 是标签\n 名称,语义版本为 \xe2\ x80\x9c1.2.3\xe2\x80\x9d。

\n
\n