Skip to content

Commit 7bc6695

Browse files
authored
Merge pull request #2269 from Kirill-Maurin/bugfix/2268
#2268 Correct a version calculation for non-master mainline branches
2 parents e92db5e + 1d254c3 commit 7bc6695

File tree

2 files changed

+23
-5
lines changed

2 files changed

+23
-5
lines changed

src/GitVersionCore.Tests/IntegrationTests/MainlineDevelopmentMode.cs

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,24 @@ public class MainlineDevelopmentMode : TestBase
2020
VersioningMode = VersioningMode.Mainline
2121
};
2222

23+
[Test]
24+
public void VerifyNonMasterMainlineVersionIdenticalAsMaster()
25+
{
26+
using var fixture = new EmptyRepositoryFixture();
27+
fixture.Repository.MakeACommit("1");
28+
29+
fixture.BranchTo("feature/foo", "foo");
30+
fixture.MakeACommit("2 +semver: major");
31+
fixture.Checkout("master");
32+
fixture.MergeNoFF("feature/foo");
33+
34+
fixture.AssertFullSemver("1.0.0", config);
35+
36+
fixture.BranchTo("support/1.0", "support");
37+
38+
fixture.AssertFullSemver("1.0.0", config);
39+
}
40+
2341
[Test]
2442
public void MergedFeatureBranchesToMasterImpliesRelease()
2543
{
@@ -117,7 +135,7 @@ public void SupportBranches()
117135
fixture.AssertFullSemver("1.0.2", config);
118136

119137
fixture.BranchTo("support/1.0", "support10");
120-
fixture.AssertFullSemver("1.0.3", config);
138+
fixture.AssertFullSemver("1.0.2", config);
121139

122140
// Move master on
123141
fixture.Checkout("master");
@@ -126,9 +144,9 @@ public void SupportBranches()
126144

127145
// Continue on support/1.0
128146
fixture.Checkout("support/1.0");
147+
fixture.MakeACommit(); // 1.0.3
129148
fixture.MakeACommit(); // 1.0.4
130-
fixture.MakeACommit(); // 1.0.5
131-
fixture.AssertFullSemver("1.0.5", config);
149+
fixture.AssertFullSemver("1.0.4", config);
132150
fixture.BranchTo("feature/foo", "foo");
133151
fixture.AssertFullSemver("1.0.5-foo.0", config);
134152
fixture.MakeACommit();
@@ -185,7 +203,7 @@ public void VerifySupportForwardMerge()
185203
fixture.MakeACommit();
186204
fixture.AssertFullSemver("1.1.2", config);
187205
fixture.Checkout("support/1.0");
188-
fixture.AssertFullSemver("1.0.4", config);
206+
fixture.AssertFullSemver("1.0.3", config);
189207

190208
fixture.BranchTo("feature/foo", "foo");
191209
fixture.MakeACommit();

src/GitVersionCore/VersionCalculation/MainlineVersionCalculator.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ public SemanticVersion FindMainlineModeVersion(BaseVersion baseVersion)
6969
mainlineVersion.BuildMetaData = CreateVersionBuildMetaData(mergeBase);
7070

7171
// branches other than master always get a bump for the act of branching
72-
if (context.CurrentBranch.FriendlyName != "master")
72+
if (!context.CurrentBranch.IsSameBranch(mainline))
7373
{
7474
var branchIncrement = FindMessageIncrement(null, context.CurrentCommit, mergeBase, mainlineCommitLog);
7575
log.Info($"Performing {branchIncrement} increment for current branch ");

0 commit comments

Comments
 (0)