Skip to content

Commit 0ee39b6

Browse files
committed
Moved commit message increment configuration from branch to global config.
1 parent 24d257e commit 0ee39b6

8 files changed

+43
-64
lines changed

src/GitVersionCore.Tests/ConfigProviderTests.CanWriteOutEffectiveConfiguration.approved.txt

Lines changed: 10 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -2,75 +2,57 @@
22
mode: ContinuousDelivery
33
tag-prefix: '[vV]'
44
continuous-delivery-fallback-tag: ci
5+
major-version-bump-message: '\+semver:\s?(breaking|major)'
6+
minor-version-bump-message: '\+semver:\s?(feature|minor)'
7+
patch-version-bump-message: '\+semver:\s?(fix|patch)'
58
branches:
69
master:
710
mode: ContinuousDelivery
811
tag:
912
increment: Patch
1013
prevent-increment-of-merged-branch-version: true
1114
track-merge-target: false
12-
major-version-bump-message: '\+semver:\s?(breaking|major)'
13-
minor-version-bump-message: '\+semver:\s?(feature|minor)'
14-
patch-version-bump-message: '\+semver:\s?(fix|patch)'
15-
commit-message-version-bump-mode: All
15+
commit-message-incrementing: Enabled
1616
release[/-]:
1717
mode: ContinuousDelivery
1818
tag: beta
1919
increment: Patch
2020
prevent-increment-of-merged-branch-version: true
2121
track-merge-target: false
22-
major-version-bump-message: '\+semver:\s?(breaking|major)'
23-
minor-version-bump-message: '\+semver:\s?(feature|minor)'
24-
patch-version-bump-message: '\+semver:\s?(fix|patch)'
25-
commit-message-version-bump-mode: All
22+
commit-message-incrementing: Enabled
2623
feature[/-]:
2724
mode: ContinuousDelivery
2825
tag: useBranchName
2926
increment: Inherit
3027
prevent-increment-of-merged-branch-version: false
3128
track-merge-target: false
32-
major-version-bump-message: '\+semver:\s?(breaking|major)'
33-
minor-version-bump-message: '\+semver:\s?(feature|minor)'
34-
patch-version-bump-message: '\+semver:\s?(fix|patch)'
35-
commit-message-version-bump-mode: All
29+
commit-message-incrementing: Enabled
3630
(pull|pull\-requests|pr)[/-]:
3731
mode: ContinuousDelivery
3832
tag: PullRequest
3933
increment: Inherit
4034
prevent-increment-of-merged-branch-version: false
4135
tag-number-pattern: '[/-](?<number>\d+)[-/]'
4236
track-merge-target: false
43-
major-version-bump-message: '\+semver:\s?(breaking|major)'
44-
minor-version-bump-message: '\+semver:\s?(feature|minor)'
45-
patch-version-bump-message: '\+semver:\s?(fix|patch)'
46-
commit-message-version-bump-mode: All
37+
commit-message-incrementing: Enabled
4738
hotfix[/-]:
4839
mode: ContinuousDelivery
4940
tag: beta
5041
increment: Patch
5142
prevent-increment-of-merged-branch-version: false
5243
track-merge-target: false
53-
major-version-bump-message: '\+semver:\s?(breaking|major)'
54-
minor-version-bump-message: '\+semver:\s?(feature|minor)'
55-
patch-version-bump-message: '\+semver:\s?(fix|patch)'
56-
commit-message-version-bump-mode: All
44+
commit-message-incrementing: Enabled
5745
support[/-]:
5846
mode: ContinuousDelivery
5947
tag:
6048
increment: Patch
6149
prevent-increment-of-merged-branch-version: true
6250
track-merge-target: false
63-
major-version-bump-message: '\+semver:\s?(breaking|major)'
64-
minor-version-bump-message: '\+semver:\s?(feature|minor)'
65-
patch-version-bump-message: '\+semver:\s?(fix|patch)'
66-
commit-message-version-bump-mode: All
51+
commit-message-incrementing: Enabled
6752
develop:
6853
mode: ContinuousDeployment
6954
tag: unstable
7055
increment: Minor
7156
prevent-increment-of-merged-branch-version: false
7257
track-merge-target: true
73-
major-version-bump-message: '\+semver:\s?(breaking|major)'
74-
minor-version-bump-message: '\+semver:\s?(feature|minor)'
75-
patch-version-bump-message: '\+semver:\s?(fix|patch)'
76-
commit-message-version-bump-mode: All
58+
commit-message-incrementing: Enabled

src/GitVersionCore.Tests/TestEffectiveConfiguration.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public TestEffectiveConfiguration(
1818
string majorMessage = null,
1919
string minorMessage = null,
2020
string patchMessage = null,
21-
CommitMessageVersionMode commitMessageMode = CommitMessageVersionMode.All) :
21+
CommitMessageIncrementMode commitMessageMode = CommitMessageIncrementMode.Enabled) :
2222
base(assemblyVersioningScheme, versioningMode, gitTagPrefix, tag, nextVersion, IncrementStrategy.Patch,
2323
branchPrefixToTrim, preventIncrementForMergedBranchVersion, tagNumberPattern, continuousDeploymentFallbackTag,
2424
trackMergeTarget,

src/GitVersionCore/Configuration/BranchConfig.cs

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,7 @@ public BranchConfig(BranchConfig branchConfiguration)
1616
PreventIncrementOfMergedBranchVersion = branchConfiguration.PreventIncrementOfMergedBranchVersion;
1717
TagNumberPattern = branchConfiguration.TagNumberPattern;
1818
TrackMergeTarget = branchConfiguration.TrackMergeTarget;
19-
MajorVersionBumpMessage = branchConfiguration.MajorVersionBumpMessage;
20-
MinorVersionBumpMessage = branchConfiguration.MinorVersionBumpMessage;
21-
PatchVersionBumpMessage = branchConfiguration.PatchVersionBumpMessage;
22-
CommitMessageVersionBumpMode = branchConfiguration.CommitMessageVersionBumpMode;
19+
CommitMessageIncrementing = branchConfiguration.CommitMessageIncrementing;
2320
}
2421

2522
[YamlMember(Alias = "mode")]
@@ -42,17 +39,8 @@ public BranchConfig(BranchConfig branchConfiguration)
4239

4340
[YamlMember(Alias = "track-merge-target")]
4441
public bool? TrackMergeTarget { get; set; }
45-
46-
[YamlMember(Alias = "major-version-bump-message")]
47-
public string MajorVersionBumpMessage { get; set; }
48-
49-
[YamlMember(Alias = "minor-version-bump-message")]
50-
public string MinorVersionBumpMessage { get; set; }
51-
52-
[YamlMember(Alias = "patch-version-bump-message")]
53-
public string PatchVersionBumpMessage { get; set; }
54-
55-
[YamlMember(Alias = "commit-message-version-bump-mode")]
56-
public CommitMessageVersionMode? CommitMessageVersionBumpMode { get; set; }
42+
43+
[YamlMember(Alias = "commit-message-incrementing")]
44+
public CommitMessageIncrementMode? CommitMessageIncrementing { get; set; }
5745
}
5846
}

src/GitVersionCore/Configuration/Config.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,15 @@ public class Config
2323
[YamlMember(Alias = "next-version")]
2424
public string NextVersion { get; set; }
2525

26+
[YamlMember(Alias = "major-version-bump-message")]
27+
public string MajorVersionBumpMessage { get; set; }
28+
29+
[YamlMember(Alias = "minor-version-bump-message")]
30+
public string MinorVersionBumpMessage { get; set; }
31+
32+
[YamlMember(Alias = "patch-version-bump-message")]
33+
public string PatchVersionBumpMessage { get; set; }
34+
2635
[YamlMember(Alias = "branches")]
2736
public Dictionary<string, BranchConfig> Branches
2837
{

src/GitVersionCore/Configuration/ConfigurationProvider.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@ public static void ApplyDefaultsTo(Config config)
2424
config.TagPrefix = config.TagPrefix ?? DefaultTagPrefix;
2525
config.VersioningMode = config.VersioningMode ?? VersioningMode.ContinuousDelivery;
2626
config.ContinuousDeploymentFallbackTag = config.ContinuousDeploymentFallbackTag ?? "ci";
27+
config.MajorVersionBumpMessage = config.MajorVersionBumpMessage ?? IncrementStrategyFinder.DefaultMajorPattern;
28+
config.MinorVersionBumpMessage = config.MinorVersionBumpMessage ?? IncrementStrategyFinder.DefaultMinorPattern;
29+
config.PatchVersionBumpMessage = config.PatchVersionBumpMessage ?? IncrementStrategyFinder.DefaultPatchPattern;
2730
var configBranches = config.Branches.ToList();
2831

2932
ApplyBranchDefaults(config, GetOrCreateBranchDefaults(config, "master"), defaultTag: string.Empty, defaultPreventIncrement: true);
@@ -72,18 +75,15 @@ public static void ApplyBranchDefaults(Config config,
7275
string majorVersionBumpMessage = IncrementStrategyFinder.DefaultMajorPattern,
7376
string minorVersionBumpMessage = IncrementStrategyFinder.DefaultMinorPattern,
7477
string patchVersionBumpMessage = IncrementStrategyFinder.DefaultPatchPattern,
75-
CommitMessageVersionMode commitMessageVersionBump = CommitMessageVersionMode.All)
78+
CommitMessageIncrementMode commitMessageVersionBump = CommitMessageIncrementMode.Enabled)
7679
{
7780
branchConfig.Tag = branchConfig.Tag ?? defaultTag;
7881
branchConfig.TagNumberPattern = branchConfig.TagNumberPattern ?? defaultTagNumberPattern;
7982
branchConfig.Increment = branchConfig.Increment ?? defaultIncrementStrategy;
8083
branchConfig.PreventIncrementOfMergedBranchVersion = branchConfig.PreventIncrementOfMergedBranchVersion ?? defaultPreventIncrement;
8184
branchConfig.TrackMergeTarget = branchConfig.TrackMergeTarget ?? defaultTrackMergeTarget;
8285
branchConfig.VersioningMode = branchConfig.VersioningMode ?? defaultVersioningMode ?? config.VersioningMode;
83-
branchConfig.MajorVersionBumpMessage = branchConfig.MajorVersionBumpMessage ?? majorVersionBumpMessage;
84-
branchConfig.MinorVersionBumpMessage = branchConfig.MinorVersionBumpMessage ?? minorVersionBumpMessage;
85-
branchConfig.PatchVersionBumpMessage = branchConfig.PatchVersionBumpMessage ?? patchVersionBumpMessage;
86-
branchConfig.CommitMessageVersionBumpMode = branchConfig.CommitMessageVersionBumpMode ?? commitMessageVersionBump;
86+
branchConfig.CommitMessageIncrementing = branchConfig.CommitMessageIncrementing ?? commitMessageVersionBump;
8787
}
8888

8989
static Config ReadConfig(string workingDirectory, IFileSystem fileSystem)

src/GitVersionCore/EffectiveConfiguration.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ public EffectiveConfiguration(
1717
string majorVersionBumpMessage,
1818
string minorVersionBumpMessage,
1919
string patchVersionBumpMessage,
20-
CommitMessageVersionMode commitMessageVersionBumpMode)
20+
CommitMessageIncrementMode commitMessageIncrementing)
2121
{
2222
AssemblyVersioningScheme = assemblyVersioningScheme;
2323
VersioningMode = versioningMode;
@@ -33,7 +33,7 @@ public EffectiveConfiguration(
3333
MajorVersionBumpMessage = majorVersionBumpMessage;
3434
MinorVersionBumpMessage = minorVersionBumpMessage;
3535
PatchVersionBumpMessage = patchVersionBumpMessage;
36-
CommitMessageVersionBumpMode = commitMessageVersionBumpMode;
36+
CommitMessageIncrementing = commitMessageIncrementing;
3737
}
3838

3939
public VersioningMode VersioningMode { get; private set; }
@@ -70,6 +70,6 @@ public EffectiveConfiguration(
7070

7171
public string PatchVersionBumpMessage { get; private set; }
7272

73-
public CommitMessageVersionMode CommitMessageVersionBumpMode { get; private set; }
73+
public CommitMessageIncrementMode CommitMessageIncrementing { get; private set; }
7474
}
7575
}

src/GitVersionCore/GitVersionContext.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -98,15 +98,15 @@ void CalculateEffectiveConfiguration()
9898
var incrementStrategy = currentBranchConfig.Value.Increment.Value;
9999
var preventIncrementForMergedBranchVersion = currentBranchConfig.Value.PreventIncrementOfMergedBranchVersion.Value;
100100
var trackMergeTarget = currentBranchConfig.Value.TrackMergeTarget.Value;
101-
var majorMessage = currentBranchConfig.Value.MajorVersionBumpMessage;
102-
var minorMessage = currentBranchConfig.Value.MinorVersionBumpMessage;
103-
var patchMessage = currentBranchConfig.Value.MinorVersionBumpMessage;
104-
var commitMessageVersionBump = currentBranchConfig.Value.CommitMessageVersionBumpMode.Value;
101+
var commitMessageVersionBump = currentBranchConfig.Value.CommitMessageIncrementing.Value;
105102

106103
var nextVersion = configuration.NextVersion;
107104
var assemblyVersioningScheme = configuration.AssemblyVersioningScheme.Value;
108105
var gitTagPrefix = configuration.TagPrefix;
109-
106+
var majorMessage = configuration.MajorVersionBumpMessage;
107+
var minorMessage = configuration.MinorVersionBumpMessage;
108+
var patchMessage = configuration.MinorVersionBumpMessage;
109+
110110
Configuration = new EffectiveConfiguration(
111111
assemblyVersioningScheme, versioningMode, gitTagPrefix,
112112
tag, nextVersion, incrementStrategy, currentBranchConfig.Key,

src/GitVersionCore/IncrementStrategyFinder.cs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@
66
using VersionCalculation.BaseVersionCalculators;
77
using LibGit2Sharp;
88

9-
public enum CommitMessageVersionMode
9+
public enum CommitMessageIncrementMode
1010
{
11-
All,
12-
MergeMessageOnly,
13-
None
11+
Enabled,
12+
Disabled,
13+
MergeMessageOnly
1414
}
1515

1616
public static class IncrementStrategyFinder
@@ -48,14 +48,14 @@ public static class IncrementStrategyFinder
4848

4949
private static VersionField? FindCommitMessageIncrement(GitVersionContext context, BaseVersion baseVersion)
5050
{
51-
if (context.Configuration.CommitMessageVersionBumpMode == CommitMessageVersionMode.None)
51+
if (context.Configuration.CommitMessageIncrementing == CommitMessageIncrementMode.Disabled)
5252
{
5353
return null;
5454
}
5555

5656
var commits = GetIntermediateCommits(context.Repository, baseVersion.BaseVersionSource, context.CurrentCommit);
5757

58-
if (context.Configuration.CommitMessageVersionBumpMode == CommitMessageVersionMode.MergeMessageOnly)
58+
if (context.Configuration.CommitMessageIncrementing == CommitMessageIncrementMode.MergeMessageOnly)
5959
{
6060
commits = commits.Where(c => c.Parents.Count() > 1);
6161
}

0 commit comments

Comments
 (0)