Skip to content

Commit e79613b

Browse files
committed
#1046 Improved test & fix
1 parent 575698c commit e79613b

File tree

2 files changed

+16
-3
lines changed

2 files changed

+16
-3
lines changed

src/GitVersionCore.Tests/IntegrationTests/ReleaseBranchScenarios.cs

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -386,13 +386,13 @@ public void CommitOnDevelop_AfterReleaseBranchMergeToDevelop_ShouldNotResetCount
386386
fixture.Repository.MakeACommit("release 2");
387387
fixture.AssertFullSemver(config, "2.0.0-beta.2");
388388

389-
// Merge release to develop
389+
// First merge release to develop
390390
Commands.Checkout(fixture.Repository, "develop");
391391
fixture.Repository.MergeNoFF("release-2.0.0", Generate.SignatureNow());
392392

393393
// Make some new commit on release
394394
Commands.Checkout(fixture.Repository, "release-2.0.0");
395-
fixture.Repository.MakeACommit("release after merge");
395+
fixture.Repository.MakeACommit("release 3 - after first merge");
396396
fixture.AssertFullSemver(config, "2.0.0-beta.3");
397397

398398
// Make new commit on develop
@@ -402,6 +402,19 @@ public void CommitOnDevelop_AfterReleaseBranchMergeToDevelop_ShouldNotResetCount
402402
// Checkout to release (no new commits)
403403
Commands.Checkout(fixture.Repository, "release-2.0.0");
404404
fixture.AssertFullSemver(config, "2.0.0-beta.3");
405+
406+
// Make some new commit on release
407+
fixture.Repository.MakeACommit("release 4");
408+
fixture.Repository.MakeACommit("release 5");
409+
fixture.AssertFullSemver(config, "2.0.0-beta.5");
410+
411+
// Second merge release to develop
412+
Commands.Checkout(fixture.Repository, "develop");
413+
fixture.Repository.MergeNoFF("release-2.0.0", Generate.SignatureNow());
414+
415+
// Checkout to release (no new commits)
416+
Commands.Checkout(fixture.Repository, "release-2.0.0");
417+
fixture.AssertFullSemver(config, "2.0.0-beta.5");
405418
}
406419
}
407420
}

src/GitVersionCore/GitRepoMetadataProvider.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ public Commit FindMergeBase(Branch branch, Branch otherBranch)
140140
mergeBaseAsForwardMerge = otherBranch.Commits
141141
.SkipWhile(c => c != commitToFindCommonBase)
142142
.TakeWhile(c => c != findMergeBase)
143-
.FirstOrDefault(c => c.Parents.Contains(findMergeBase));
143+
.LastOrDefault(c => c.Parents.Contains(findMergeBase));
144144

145145
if (mergeBaseAsForwardMerge != null)
146146
{

0 commit comments

Comments
 (0)