GitVersion配置文件中的默认模式
我发现很难开始使用gitversion 我这里的问题是如何解释这个文件 我有一个GitVersion.yml配置文件,如下所示GitVersion配置文件中的默认模式,gitversion,Gitversion,我发现很难开始使用gitversion 我这里的问题是如何解释这个文件 我有一个GitVersion.yml配置文件,如下所示 那么第二行的模式代表什么呢?如果没有为分支指定模式,是否会考虑使用默认模式 在以下场景中,所有分支都指定了模式。那么这意味着什么呢?对于任何分支(主分支、发布分支、功能分支、请求分支、修补程序分支、支持分支和开发分支),将考虑指定的各自模式(对于ex ContinuousDeployment,指定用于开发分支)?分支级别的模式设置是否会覆盖第2行的设置 最后,假设我创建
下一版本:6.0.1
方式:连续交付
分支机构:
大师:
方式:连续交付
标记:“”
增量:补丁
防止合并分支版本的增量:true
跟踪合并目标:false
正则表达式:^master
跟踪发布分支:false
发布分支:false
发布:
方式:连续交付
标签:beta
增量:补丁
防止合并分支版本的增量:true
跟踪合并目标:false
正则表达式:^releases?[/-]
跟踪发布分支:false
发布分支:正确吗
释放前重量:1000
特色:
方式:连续交付
标签:useBranchName
增量:继承
防止合并分支版本的增量:false
跟踪合并目标:false
正则表达式:^features?[/-]
跟踪发布分支:false
发布分支:false
拉取请求:
方式:连续交付
标签:PullRequest
增量:继承
防止合并分支版本的增量:false
标记编号模式:'[-](?\d+[-/]'
跟踪合并目标:false
正则表达式:^(pull | pull \-请求| pr)[/-]
跟踪发布分支:false
发布分支:false
修补程序:
方式:连续交付
标签:beta
增量:补丁
防止合并分支版本的增量:false
跟踪合并目标:false
正则表达式:^修补程序?[/-]
跟踪发布分支:false
发布分支:false
支持:
方式:连续交付
标记:“”
增量:补丁
防止合并分支版本的增量:true
跟踪合并目标:false
正则表达式:^支持[/-]
跟踪发布分支:false
发布分支:false
发展:
模式:连续部署
标签:不稳定
增量:小调
防止合并分支版本的增量:false
跟踪合并目标:true
正则表达式:^dev(elop)?(elop)$
跟踪发布分支:true
发布分支:false
忽略:
沙:[]
合并消息格式:{}
回答您的问题:
分支
部分下的分支配置中重写)regex
es,我相信GitVersion将“回退”到默认值。功能分支的正则表达式是^features?[/-]
。基本上,一个分支可以选择以功能
(单数或复数)开头,后跟/
或-
(在正则表达式中未明确指定)再后跟任何其他内容。由于urgentfix
不匹配任何其他分支默认正则表达式(根据GitFlow),urgentfix
被视为一个功能分支分支
部分是否是一个自由格式的部分,您可以在其中添加任何您想要的分支规范(例如添加urgentfix:
部分),或者您是否必须使用一个“预定义”部分(都基于GitFlow分支)
我想您可以尝试创建自己的配置部分,看看是否有效
如果不是,您可能希望“劫持”其他分支配置中的一个,而您可能不会使用这些配置来实现所需的功能。如果您使用此方法,则可能需要覆盖配置中的其他设置,例如源分支
,以便GitVersion能够正确计算版本。当然,不要忘记使用适当的正则表达式,这样GitFlow就知道如何将此配置用于urgentfix
分支
嗯
更新
我刚刚在他们的文档中看到,除了众所周知的GitFlow或GitHubFlow之外,您还可以添加自己的分支配置。但您有责任设置配置,以便GitVersion根据您的需求计算版本
next-version: 6.0.1
mode: ContinuousDelivery
branches:
master:
mode: ContinuousDelivery
tag: ''
increment: Patch
prevent-increment-of-merged-branch-version: true
track-merge-target: false
regex: ^master
tracks-release-branches: false
is-release-branch: false
release:
mode: ContinuousDelivery
tag: beta
increment: Patch
prevent-increment-of-merged-branch-version: true
track-merge-target: false
regex: ^releases?[/-]
tracks-release-branches: false
is-release-branch: true
pre-release-weight: 1000
feature:
mode: ContinuousDelivery
tag: useBranchName
increment: Inherit
prevent-increment-of-merged-branch-version: false
track-merge-target: false
regex: ^features?[/-]
tracks-release-branches: false
is-release-branch: false
pull-request:
mode: ContinuousDelivery
tag: PullRequest
increment: Inherit
prevent-increment-of-merged-branch-version: false
tag-number-pattern: '[/-](?<number>\d+)[-/]'
track-merge-target: false
regex: ^(pull|pull\-requests|pr)[/-]
tracks-release-branches: false
is-release-branch: false
hotfix:
mode: ContinuousDelivery
tag: beta
increment: Patch
prevent-increment-of-merged-branch-version: false
track-merge-target: false
regex: ^hotfix(es)?[/-]
tracks-release-branches: false
is-release-branch: false
support:
mode: ContinuousDelivery
tag: ''
increment: Patch
prevent-increment-of-merged-branch-version: true
track-merge-target: false
regex: ^support[/-]
tracks-release-branches: false
is-release-branch: false
develop:
mode: ContinuousDeployment
tag: unstable
increment: Minor
prevent-increment-of-merged-branch-version: false
track-merge-target: true
regex: ^dev(elop)?(ment)?$
tracks-release-branches: true
is-release-branch: false
ignore:
sha: []
merge-message-formats: {}