diff --git a/.gitignore b/.gitignore index 27dd40fd45..cae0bc79c6 100644 --- a/.gitignore +++ b/.gitignore @@ -39,6 +39,7 @@ ForSample/ *NugetTaskBuild* *NugetRefBuild* *NugetExeBuild* +*GitVersionVsoTaskBuild* *GemBuild* # Visual Studio profiler diff --git a/appveyor.yml b/appveyor.yml index 864e37d826..b2af5d85c3 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -24,6 +24,10 @@ build_script: - cmd: 7z a "GitVersion_%GitVersion_NuGetVersion%.zip" .\build\NuGetCommandLineBuild\Tools\*.* - cmd: appveyor PushArtifact "GitVersion_%GitVersion_NuGetVersion%.zip" + - ps: .\build\Update-GitVersionVsoTaskVersion.ps1 .\build\GitVersionVsoTaskBuild\task.json $env:GitVersion_Major $env:GitVersion_Minor $env:GitVersion_Patch + - cmd: 7z a "GitVersionVsoBuildTask_%GitVersion_NuGetVersion%.zip" .\build\GitVersionVsoTaskBuild\*.* + - cmd: appveyor PushArtifact "GitVersionVsoBuildTask_%GitVersion_NuGetVersion%.zip" + test_script: - nunit-console "src\GitVersionTask.Tests\bin\%CONFIGURATION%\GitVersionTask.Tests.dll" "src\GitVersionExe.Tests\bin\%CONFIGURATION%\GitVersionExe.Tests.dll" "src\GitVersionCore.Tests\bin\%CONFIGURATION%\GitVersionCore.Tests.dll" /noshadow diff --git a/build/Update-GitVersionVsoTaskVersion.ps1 b/build/Update-GitVersionVsoTaskVersion.ps1 new file mode 100644 index 0000000000..c0438b4f88 --- /dev/null +++ b/build/Update-GitVersionVsoTaskVersion.ps1 @@ -0,0 +1,17 @@ +param ( +[string] $filePath, +[string] $major, +[string] $minor, +[string] $patch +) + +# Get the task.json as a powershell object +$task = Get-Content -Raw -Path $filePath | ConvertFrom-Json + +$task.version.Major = $major +$task.version.Minor = $minor +$task.version.Patch = $patch + +# get this as a string again + +ConvertTo-Json $task | Set-Content -Path $filePath \ No newline at end of file diff --git a/docs/more-info/build-server-setup/tfs-build-vnext.md b/docs/more-info/build-server-setup/tfs-build-vnext.md index e69de29bb2..ab6e6c433a 100644 --- a/docs/more-info/build-server-setup/tfs-build-vnext.md +++ b/docs/more-info/build-server-setup/tfs-build-vnext.md @@ -0,0 +1,25 @@ +# Visual Studio Online (Build vNext) Setup +## Basic Usage +In [Visual Studio Online](https://www.visualstudio.com/) build vNext (the web based build system) you can add GitVersion as a Build Step. This requires a one-time setup to import the GitVersion task into your VSO instance. + +## Installing/updating the VSO Build Step +1. Install the `tfx` command line tool as shown [here](https://github.com/Microsoft/tfs-cli/blob/master/docs/buildtasks.md) +2. Download the GitVersion VSO extension from the latest release on the [GitVersion releases page](https://github.com/GitTools/GitVersion/releases) and unzip. +3. Run `tfx login` if you haven't yet, make sure to use `https://.visualstudio.com/DefaultCollection` as the URL and provide a Personal Access Token +4. From the directory outside of where you unzipped the task, run `tfx upload .\GitVersionVsoTask` where GitVersionVsoTask is the directory containing the files. +5. It should successfully install + +## Using the GitVersion VSO Build Step +From a VSO vNext Build Definition, select "Add a Step" and then in the Build category, choose GitVersion and Click Add. You'll probably want to drag the task to be at or near the top to ensure it executes before your other build steps. + +If you want the GitVersionTask to update AssemblyInfo files, check the box in the task configuration. For advanced usage, you can pass additional options to the GitVersion exe in the Additional arguments section. + +## Using the GitVersion Variables +GitVersion writes build parameters into VSO, so they will automatically be passed to your build scripts to use. It also writes GITVERSION_* environment variables that are available for any subsequent build step. + + +## Running inside Visual Studio Online +* We output the individual values of the GitVersion version as the build parameter: `GitVersion.*` (Eg: `GitVersion.Major`) if you need access to them in your build script + +### NuGet in VSO +* If you use a command script to build your NuPkg, use `%GITVERSION_NUGETVERSION%` as the version parameter: `nuget.exe pack path\to\my.nuspec -version %GITVERSION_NUGETVERSION%` diff --git a/src/GitVersionCore.Tests/BuildServers/BuildServerBaseTests.cs b/src/GitVersionCore.Tests/BuildServers/BuildServerBaseTests.cs index 580cd52d84..e888f9aec8 100644 --- a/src/GitVersionCore.Tests/BuildServers/BuildServerBaseTests.cs +++ b/src/GitVersionCore.Tests/BuildServers/BuildServerBaseTests.cs @@ -44,5 +44,10 @@ public override string[] GenerateSetParameterMessage(string name, string value) { return new string[0]; } + + public override string GetCurrentBranch() + { + throw new NotImplementedException(); + } } } \ No newline at end of file diff --git a/src/GitVersionCore.Tests/BuildServers/VsoAgentTests.cs b/src/GitVersionCore.Tests/BuildServers/VsoAgentTests.cs new file mode 100644 index 0000000000..17b526e9c7 --- /dev/null +++ b/src/GitVersionCore.Tests/BuildServers/VsoAgentTests.cs @@ -0,0 +1,27 @@ +using GitVersion; +using NUnit.Framework; +using Shouldly; + +[TestFixture] +public class VsoAgentTests +{ + [Test] + public void Develop_branch() + { + var versionBuilder = new VsoAgent(); + var vsVersion = versionBuilder.GenerateSetVersionMessage("0.0.0-Unstable4"); + // Assert.AreEqual("##vso[task.setvariable variable=GitBuildNumber;]0.0.0-Unstable4", vsVersion); + + vsVersion.ShouldBe(null); + } + + [Test] + public void EscapeValues() + { + var versionBuilder = new VsoAgent(); + var vsVersion = versionBuilder.GenerateSetParameterMessage("Foo", "0.8.0-unstable568 Branch:'develop' Sha:'ee69bff1087ebc95c6b43aa2124bd58f5722e0cb'"); + + vsVersion[0].ShouldBe("##vso[task.setvariable variable=GitVersion.Foo;]0.8.0-unstable568 Branch:'develop' Sha:'ee69bff1087ebc95c6b43aa2124bd58f5722e0cb'"); + } + +} \ No newline at end of file diff --git a/src/GitVersionCore.Tests/Fixtures/LocalRepositoryFixture.cs b/src/GitVersionCore.Tests/Fixtures/LocalRepositoryFixture.cs new file mode 100644 index 0000000000..022efca20d --- /dev/null +++ b/src/GitVersionCore.Tests/Fixtures/LocalRepositoryFixture.cs @@ -0,0 +1,9 @@ +using GitVersion; +using LibGit2Sharp; + +public class LocalRepositoryFixture : RepositoryFixtureBase +{ + public LocalRepositoryFixture(Config configuration, IRepository repository) : base(configuration, repository) + { + } +} \ No newline at end of file diff --git a/src/GitVersionCore.Tests/Fixtures/RemoteRepositoryFixture.cs b/src/GitVersionCore.Tests/Fixtures/RemoteRepositoryFixture.cs index 82588af506..7799a27d7e 100644 --- a/src/GitVersionCore.Tests/Fixtures/RemoteRepositoryFixture.cs +++ b/src/GitVersionCore.Tests/Fixtures/RemoteRepositoryFixture.cs @@ -1,31 +1,30 @@ using System; - - using GitVersion; - using LibGit2Sharp; +using GitVersion; +using LibGit2Sharp; public class RemoteRepositoryFixture : RepositoryFixtureBase { - public string LocalRepositoryPath; - public IRepository LocalRepository; - public RemoteRepositoryFixture(Func builder, Config configuration) : base(builder, configuration) { - CloneRepository(); + CreateLocalRepository(); } public RemoteRepositoryFixture(Config configuration) : base(CreateNewRepository, configuration) { - CloneRepository(); + CreateLocalRepository(); } + public LocalRepositoryFixture LocalRepositoryFixture { get; private set; } + + /// /// Simulates running on build server /// public void InitialiseRepo() { - new GitPreparer(null, null, new Authentication(), null, false, LocalRepositoryPath).Initialise(true); + new GitPreparer(null, null, new Authentication(), null, false, LocalRepositoryFixture.RepositoryPath).Initialise(true, null); } static IRepository CreateNewRepository(string path) @@ -38,25 +37,14 @@ static IRepository CreateNewRepository(string path) return repo; } - void CloneRepository() + void CreateLocalRepository() { - LocalRepositoryPath = PathHelper.GetTempPath(); - LibGit2Sharp.Repository.Clone(RepositoryPath, LocalRepositoryPath); - LocalRepository = new Repository(LocalRepositoryPath); + LocalRepositoryFixture = CloneRepository(); } public override void Dispose() { - LocalRepository.Dispose(); - try - { - DirectoryHelper.DeleteDirectory(LocalRepositoryPath); - } - catch (Exception e) - { - Console.WriteLine("Failed to clean up repository path at {0}. Received exception: {1}", RepositoryPath, e.Message); - } - + LocalRepositoryFixture.Dispose(); base.Dispose(); } } \ No newline at end of file diff --git a/src/GitVersionCore.Tests/Fixtures/RepositoryFixtureBase.cs b/src/GitVersionCore.Tests/Fixtures/RepositoryFixtureBase.cs index 699805c441..e2801801ab 100644 --- a/src/GitVersionCore.Tests/Fixtures/RepositoryFixtureBase.cs +++ b/src/GitVersionCore.Tests/Fixtures/RepositoryFixtureBase.cs @@ -9,25 +9,29 @@ public abstract class RepositoryFixtureBase : IDisposable { Dictionary participants = new Dictionary(); - public string RepositoryPath; - public IRepository Repository; Config configuration; StringBuilder diagramBuilder; protected RepositoryFixtureBase(Func repoBuilder, Config configuration) + : this(configuration, repoBuilder(PathHelper.GetTempPath())) + { + } + + protected RepositoryFixtureBase(Config configuration, IRepository repository) { ConfigurationProvider.ApplyDefaultsTo(configuration); diagramBuilder = new StringBuilder(); diagramBuilder.AppendLine("@startuml"); this.configuration = configuration; - RepositoryPath = PathHelper.GetTempPath(); - Repository = repoBuilder(RepositoryPath); + Repository = repository; Repository.Config.Set("user.name", "Test"); Repository.Config.Set("user.email", "test@email.com"); IsForTrackedBranchOnly = true; } public bool IsForTrackedBranchOnly { private get; set; } + public IRepository Repository { get; private set; } + public string RepositoryPath { get { return Repository.Info.WorkingDirectory.TrimEnd('\\'); } } public void Checkout(string branch) { @@ -190,4 +194,11 @@ public virtual void Dispose() Trace.WriteLine(string.Empty); Trace.WriteLine(diagramBuilder.ToString()); } + + public LocalRepositoryFixture CloneRepository(Config config = null) + { + var localPath = PathHelper.GetTempPath(); + LibGit2Sharp.Repository.Clone(RepositoryPath, localPath); + return new LocalRepositoryFixture(config ?? new Config(), new Repository(localPath)); + } } \ No newline at end of file diff --git a/src/GitVersionCore.Tests/GitHelperTests.cs b/src/GitVersionCore.Tests/GitHelperTests.cs new file mode 100644 index 0000000000..869d14e7b4 --- /dev/null +++ b/src/GitVersionCore.Tests/GitHelperTests.cs @@ -0,0 +1,75 @@ +namespace GitVersionCore.Tests +{ + using GitVersion; + using LibGit2Sharp; + using NUnit.Framework; + using Shouldly; + + public class GitHelperTests + { + [Test] + public void NormalisationOfPullRequestsWithFetch() + { + using (var fixture = new EmptyRepositoryFixture(new Config())) + { + fixture.Repository.MakeACommit(); + + fixture.Repository.CreateBranch("feature/foo").Checkout(); + fixture.Repository.MakeACommit(); + var commit = fixture.Repository.CreatePullRequestRef("feature/foo", "master", prNumber: 3); + using (var localFixture = fixture.CloneRepository()) + { + localFixture.Checkout(commit.Sha); + GitHelper.NormalizeGitDirectory(localFixture.RepositoryPath, new Authentication(), noFetch: false, currentBranch: string.Empty); + + var normalisedPullBranch = localFixture.Repository.FindBranch("pull/3/merge"); + normalisedPullBranch.ShouldNotBe(null); + } + } + } + + [Test] + public void NormalisationOfPullRequestsWithoutFetch() + { + using (var fixture = new EmptyRepositoryFixture(new Config())) + { + fixture.Repository.MakeACommit(); + + fixture.Repository.CreateBranch("feature/foo").Checkout(); + fixture.Repository.MakeACommit(); + var commit = fixture.Repository.CreatePullRequestRef("feature/foo", "master", prNumber: 3, allowFastFowardMerge: true); + using (var localFixture = fixture.CloneRepository()) + { + localFixture.Checkout(commit.Sha); + GitHelper.NormalizeGitDirectory(localFixture.RepositoryPath, new Authentication(), noFetch: true, currentBranch: "refs/pull/3/merge"); + + var normalisedPullBranch = localFixture.Repository.FindBranch("pull/3/merge"); + normalisedPullBranch.ShouldNotBe(null); + } + } + } + + [Test] + public void UpdatesLocalBranchesWhen() + { + using (var fixture = new EmptyRepositoryFixture(new Config())) + { + fixture.Repository.MakeACommit(); + + fixture.Repository.CreateBranch("feature/foo").Checkout(); + fixture.Repository.MakeACommit(); + using (var localFixture = fixture.CloneRepository()) + { + localFixture.Checkout("feature/foo"); + // Advance remote + var advancedCommit = fixture.Repository.MakeACommit(); + GitHelper.NormalizeGitDirectory(localFixture.RepositoryPath, new Authentication(), noFetch: false, currentBranch: null); + + var normalisedBranch = localFixture.Repository.FindBranch("feature/foo"); + normalisedBranch.ShouldNotBe(null); + normalisedBranch.Tip.Sha.ShouldBe(advancedCommit.Sha); + } + } + } + } +} \ No newline at end of file diff --git a/src/GitVersionExe.Tests/GitPreparerTests.cs b/src/GitVersionCore.Tests/GitPreparerTests.cs similarity index 57% rename from src/GitVersionExe.Tests/GitPreparerTests.cs rename to src/GitVersionCore.Tests/GitPreparerTests.cs index 6efee88845..3ea50ae810 100644 --- a/src/GitVersionExe.Tests/GitPreparerTests.cs +++ b/src/GitVersionCore.Tests/GitPreparerTests.cs @@ -9,11 +9,6 @@ [TestFixture] public class GitPreparerTests { - public GitPreparerTests() - { - Logger.SetLoggers(s => { }, s => { }, s => { }); - } - const string DefaultBranchName = "master"; const string SpecificBranchName = "feature/foo"; @@ -39,22 +34,11 @@ public void WorksCorrectlyWithRemoteRepository(string branchName, string expecte fixture.Repository.CreateBranch(SpecificBranchName); - var arguments = new Arguments - { - TargetPath = tempDir, - TargetUrl = fixture.RepositoryPath - }; - // Copy contents into working directory File.Copy(Path.Combine(fixture.RepositoryPath, "TestFile.txt"), Path.Combine(tempDir, "TestFile.txt")); - if (!string.IsNullOrWhiteSpace(branchName)) - { - arguments.TargetBranch = branchName; - } - - var gitPreparer = new GitPreparer(arguments.TargetUrl, arguments.DynamicRepositoryLocation, arguments.Authentication, arguments.TargetBranch, arguments.NoFetch, arguments.TargetPath); - gitPreparer.Initialise(false); + var gitPreparer = new GitPreparer(fixture.RepositoryPath, null, new Authentication(), branchName, false, tempDir); + gitPreparer.Initialise(false, null); dynamicRepositoryPath = gitPreparer.GetDotGitDirectory(); gitPreparer.IsDynamicGitRepository.ShouldBe(true); @@ -91,19 +75,12 @@ public void UpdatesExistingDynamicRepository() { mainRepositoryFixture.Repository.MakeCommits(1); - var arguments = new Arguments - { - TargetPath = tempDir, - TargetUrl = mainRepositoryFixture.RepositoryPath, - TargetBranch = "master" - }; - - var gitPreparer = new GitPreparer(arguments.TargetUrl, arguments.DynamicRepositoryLocation, arguments.Authentication, arguments.TargetBranch, arguments.NoFetch, arguments.TargetPath); - gitPreparer.Initialise(false); + var gitPreparer = new GitPreparer(mainRepositoryFixture.RepositoryPath, null, new Authentication(), "master", false, tempDir); + gitPreparer.Initialise(false, null); dynamicRepositoryPath = gitPreparer.GetDotGitDirectory(); var newCommit = mainRepositoryFixture.Repository.MakeACommit(); - gitPreparer.Initialise(false); + gitPreparer.Initialise(false, null); using (var repository = new Repository(dynamicRepositoryPath)) { @@ -139,14 +116,8 @@ public void PicksAnotherDirectoryNameWhenDynamicRepoFolderTaken() expectedDynamicRepoLocation = Path.Combine(tempPath, fixture.RepositoryPath.Split('\\').Last()); Directory.CreateDirectory(expectedDynamicRepoLocation); - var arguments = new Arguments - { - TargetPath = tempDir, - TargetUrl = fixture.RepositoryPath - }; - - var gitPreparer = new GitPreparer(arguments.TargetUrl, arguments.DynamicRepositoryLocation, arguments.Authentication, arguments.TargetBranch, arguments.NoFetch, arguments.TargetPath); - gitPreparer.Initialise(false); + var gitPreparer = new GitPreparer(fixture.RepositoryPath, null, new Authentication(), null, false, tempDir); + gitPreparer.Initialise(false, null); gitPreparer.IsDynamicGitRepository.ShouldBe(true); gitPreparer.DynamicGitRepositoryPath.ShouldBe(expectedDynamicRepoLocation + "_1\\.git"); @@ -166,46 +137,13 @@ public void PicksAnotherDirectoryNameWhenDynamicRepoFolderTaken() public void WorksCorrectlyWithLocalRepository() { var tempDir = Path.GetTempPath(); - - var arguments = new Arguments - { - TargetPath = tempDir - }; - - var gitPreparer = new GitPreparer(arguments.TargetUrl, arguments.DynamicRepositoryLocation, arguments.Authentication, arguments.TargetBranch, arguments.NoFetch, arguments.TargetPath); + var gitPreparer = new GitPreparer(null, null, null, null, false, tempDir); var dynamicRepositoryPath = gitPreparer.GetDotGitDirectory(); dynamicRepositoryPath.ShouldBe(null); gitPreparer.IsDynamicGitRepository.ShouldBe(false); } - [Test] - public void UsesGitVersionConfigWhenCreatingDynamicRepository() - { - var localRepoPath = PathHelper.GetTempPath(); - var repoBasePath = Path.GetDirectoryName(PathHelper.GetTempPath()); - Directory.CreateDirectory(localRepoPath); - - try - { - using (var remote = new EmptyRepositoryFixture(new Config())) - { - remote.Repository.MakeACommit(); - var configFile = Path.Combine(localRepoPath, "GitVersionConfig.yaml"); - File.WriteAllText(configFile, "next-version: 1.0.0"); - - var arguments = string.Format(" /url {0} /dynamicRepoLocation {1}", remote.RepositoryPath, repoBasePath); - var results = GitVersionHelper.ExecuteIn(localRepoPath, arguments, false); - results.OutputVariables.SemVer.ShouldBe("1.0.0"); - } - } - finally - { - DeleteHelper.DeleteGitRepository(localRepoPath); - DeleteHelper.DeleteGitRepository(repoBasePath); - } - } - [Test] public void UsingDynamicRepositoryWithFeatureBranchWorks() { @@ -218,22 +156,14 @@ public void UsingDynamicRepositoryWithFeatureBranchWorks() { using (var mainRepositoryFixture = new EmptyRepositoryFixture(new Config())) { - var commitId = mainRepositoryFixture.Repository.MakeACommit().Id.Sha; - - var arguments = new Arguments - { - TargetPath = tempDir, - TargetUrl = mainRepositoryFixture.RepositoryPath, - TargetBranch = "feature1", - CommitId = commitId - }; + mainRepositoryFixture.Repository.MakeACommit(); - var gitPreparer = new GitPreparer(arguments.TargetUrl, arguments.DynamicRepositoryLocation, arguments.Authentication, arguments.TargetBranch, arguments.NoFetch, arguments.TargetPath); - gitPreparer.Initialise(true); + var gitPreparer = new GitPreparer(mainRepositoryFixture.RepositoryPath, null, new Authentication(), "feature1", false, tempDir); + gitPreparer.Initialise(true, null); mainRepositoryFixture.Repository.CreateBranch("feature1").Checkout(); - Assert.DoesNotThrow(() => gitPreparer.Initialise(true)); + Should.NotThrow(() => gitPreparer.Initialise(true, null)); } } finally @@ -254,19 +184,12 @@ public void UsingDynamicRepositoryWithoutTargetBranchFails() { using (var mainRepositoryFixture = new EmptyRepositoryFixture(new Config())) { - var commitId = mainRepositoryFixture.Repository.MakeACommit().Id.Sha; - - var arguments = new Arguments - { - TargetPath = tempDir, - TargetUrl = mainRepositoryFixture.RepositoryPath, - CommitId = commitId - }; + mainRepositoryFixture.Repository.MakeACommit(); - var gitPreparer = new GitPreparer(arguments.TargetUrl, arguments.DynamicRepositoryLocation, arguments.Authentication, arguments.TargetBranch, arguments.NoFetch, arguments.TargetPath); - gitPreparer.Initialise(true); + var gitPreparer = new GitPreparer(mainRepositoryFixture.RepositoryPath, null, new Authentication(), null, false, tempDir); + gitPreparer.Initialise(true, null); - Assert.Throws(() => gitPreparer.Initialise(true)); + Should.Throw(() => gitPreparer.Initialise(true, null)); } } finally @@ -285,21 +208,13 @@ public void TestErrorThrownForInvalidRepository() try { - var arguments = new Arguments - { - TargetPath = tempDir, - TargetUrl = "http://127.0.0.1/testrepo.git" - }; + var gitPreparer = new GitPreparer("http://127.0.0.1/testrepo.git", null, new Authentication(), null, false, tempDir); - var gitPreparer = new GitPreparer(arguments.TargetUrl, arguments.DynamicRepositoryLocation, arguments.Authentication, arguments.TargetBranch, arguments.NoFetch, arguments.TargetPath); - - Assert.Throws(() => gitPreparer.Initialise(true)); + Should.Throw(() => gitPreparer.Initialise(true, null)); } finally { Directory.Delete(tempDir, true); } } - - // TODO test around normalisation } diff --git a/src/GitVersionCore.Tests/GitVersionCore.Tests.csproj b/src/GitVersionCore.Tests/GitVersionCore.Tests.csproj index 5613b89170..3efa85e82e 100644 --- a/src/GitVersionCore.Tests/GitVersionCore.Tests.csproj +++ b/src/GitVersionCore.Tests/GitVersionCore.Tests.csproj @@ -24,6 +24,7 @@ prompt 4 false + 5 full @@ -71,10 +72,26 @@ ..\packages\Mono.Cecil.0.9.6.1\lib\net45\Mono.Cecil.Rocks.dll True + + ..\packages\NUnitTestAdapter.2.0.0\lib\nunit.core.dll + True + + + ..\packages\NUnitTestAdapter.2.0.0\lib\nunit.core.interfaces.dll + True + False ..\packages\NUnit.2.6.4\lib\nunit.framework.dll + + ..\packages\NUnitTestAdapter.2.0.0\lib\nunit.util.dll + True + + + ..\packages\NUnitTestAdapter.2.0.0\lib\NUnit.VisualStudio.TestAdapter.dll + True + ..\packages\Shouldly.2.5.0\lib\net40\Shouldly.dll True @@ -101,12 +118,16 @@ + + + + @@ -163,6 +184,7 @@ + @@ -175,7 +197,9 @@ - + + + diff --git a/src/GitVersionCore.Tests/Helpers/GitTestExtensions.cs b/src/GitVersionCore.Tests/Helpers/GitTestExtensions.cs index e83eedfae5..1d99a22efe 100644 --- a/src/GitVersionCore.Tests/Helpers/GitTestExtensions.cs +++ b/src/GitVersionCore.Tests/Helpers/GitTestExtensions.cs @@ -20,7 +20,6 @@ public static void MergeNoFF(this IRepository repository, string branch) public static void MergeNoFF(this IRepository repository, string branch, Signature sig) { - // Fixes a race condition repository.Merge(repository.FindBranch(branch), sig, new MergeOptions { FastForwardStrategy = FastForwardStrategy.NoFastFoward @@ -61,20 +60,26 @@ public static Tag MakeATaggedCommit(this IRepository repository, string tag) return repository.Tags.Add(tag, commit); } - public static Branch CreatePullRequest(this IRepository repository, string from, string to, int prNumber = 2, bool isRemotePr = true) + public static Commit CreatePullRequestRef(this IRepository repository, string from, string to, int prNumber = 2, bool normalise = false, bool allowFastFowardMerge = false) { + repository.Checkout(repository.FindBranch(to).Tip); + if (allowFastFowardMerge) + { + repository.Merge(repository.FindBranch(from), Constants.SignatureNow()); + } + else + { + repository.MergeNoFF(from); + } + var commit = repository.Head.Tip; + repository.Refs.Add("refs/pull/" + prNumber + "/merge", commit.Id); repository.Checkout(to); - repository.MergeNoFF(from); - repository.CreateBranch("pull/" + prNumber + "/merge").Checkout(); - repository.Checkout(to); - repository.Reset(ResetMode.Hard, "HEAD~1"); - var pullBranch = repository.Checkout("pull/" + prNumber + "/merge"); - if (isRemotePr) + if (normalise) { - // If we delete the branch, it is effectively the same as remote PR - repository.Branches.Remove(from); + // Turn the ref into a real branch + repository.Branches.Add("pull/" + prNumber + "/merge", commit).Checkout(); } - return pullBranch; + return commit; } } \ No newline at end of file diff --git a/src/GitVersionCore.Tests/IntegrationTests/HotfixBranchScenarios.cs b/src/GitVersionCore.Tests/IntegrationTests/HotfixBranchScenarios.cs index a8a6e31122..e9548c3678 100644 --- a/src/GitVersionCore.Tests/IntegrationTests/HotfixBranchScenarios.cs +++ b/src/GitVersionCore.Tests/IntegrationTests/HotfixBranchScenarios.cs @@ -72,7 +72,7 @@ public void PatchOlderReleaseExample() fixture.Repository.MakeACommit(); fixture.AssertFullSemver("1.1.1-fix.1+3"); - fixture.Repository.CreatePullRequest("feature/fix", "hotfix-1.1.1", isRemotePr: false); + fixture.Repository.CreatePullRequestRef("feature/fix", "hotfix-1.1.1", normalise: true); fixture.AssertFullSemver("1.1.1-PullRequest.2+4"); fixture.Repository.Checkout("hotfix-1.1.1"); fixture.Repository.MergeNoFF("feature/fix", Constants.SignatureNow()); diff --git a/src/GitVersionCore.Tests/IntegrationTests/OtherScenarios.cs b/src/GitVersionCore.Tests/IntegrationTests/OtherScenarios.cs index b3c7acf487..50cdbb1526 100644 --- a/src/GitVersionCore.Tests/IntegrationTests/OtherScenarios.cs +++ b/src/GitVersionCore.Tests/IntegrationTests/OtherScenarios.cs @@ -22,9 +22,9 @@ public void DoNotBlowUpWhenMasterAndDevelopPointAtSameCommit() fixture.Repository.MakeACommit(); fixture.Repository.CreateBranch("develop"); - fixture.LocalRepository.Network.Fetch(fixture.LocalRepository.Network.Remotes.First()); - fixture.LocalRepository.Checkout(fixture.Repository.Head.Tip); - fixture.LocalRepository.Branches.Remove("master"); + fixture.LocalRepositoryFixture.Repository.Network.Fetch(fixture.LocalRepositoryFixture.Repository.Network.Remotes.First()); + fixture.LocalRepositoryFixture.Repository.Checkout(fixture.Repository.Head.Tip); + fixture.LocalRepositoryFixture.Repository.Branches.Remove("master"); fixture.InitialiseRepo(); fixture.AssertFullSemver("1.0.1+1"); } @@ -42,9 +42,9 @@ public void DoNotBlowUpWhenDevelopAndFeatureBranchPointAtSameCommit() fixture.Repository.MakeACommit(); fixture.Repository.CreateBranch("feature/someFeature"); - fixture.LocalRepository.Network.Fetch(fixture.LocalRepository.Network.Remotes.First()); - fixture.LocalRepository.Checkout(fixture.Repository.Head.Tip); - fixture.LocalRepository.Branches.Remove("master"); + fixture.LocalRepositoryFixture.Repository.Network.Fetch(fixture.LocalRepositoryFixture.Repository.Network.Remotes.First()); + fixture.LocalRepositoryFixture.Repository.Checkout(fixture.Repository.Head.Tip); + fixture.LocalRepositoryFixture.Repository.Branches.Remove("master"); fixture.InitialiseRepo(); fixture.AssertFullSemver("1.1.0-unstable.1"); } diff --git a/src/GitVersionCore.Tests/IntegrationTests/PullRequestScenarios.cs b/src/GitVersionCore.Tests/IntegrationTests/PullRequestScenarios.cs index 3bdcecb8c0..02e03ca2f1 100644 --- a/src/GitVersionCore.Tests/IntegrationTests/PullRequestScenarios.cs +++ b/src/GitVersionCore.Tests/IntegrationTests/PullRequestScenarios.cs @@ -14,7 +14,7 @@ public void CanCalculatePullRequestChanges() fixture.Repository.CreateBranch("feature/Foo").Checkout(); fixture.Repository.MakeACommit(); - fixture.Repository.CreatePullRequest("feature/Foo", "master"); + fixture.Repository.CreatePullRequestRef("feature/Foo", "master", normalise: true); fixture.Repository.DumpGraph(); fixture.AssertFullSemver("0.1.1-PullRequest.2+2"); @@ -32,7 +32,7 @@ public void CanCalculatePullRequestChangesInheritingConfig() fixture.Repository.CreateBranch("feature/Foo").Checkout(); fixture.Repository.MakeACommit(); - fixture.Repository.CreatePullRequest("feature/Foo", "develop", 44); + fixture.Repository.CreatePullRequestRef("feature/Foo", "develop", 44, normalise: true); fixture.Repository.DumpGraph(); fixture.AssertFullSemver("0.2.0-PullRequest.44+3"); @@ -49,7 +49,7 @@ public void CanCalculatePullRequestChangesFromRemoteRepo() fixture.Repository.MakeACommit(); - fixture.Repository.CreatePullRequest("feature/Foo", "master"); + fixture.Repository.CreatePullRequestRef("feature/Foo", "master", normalise: true); fixture.Repository.DumpGraph(); fixture.AssertFullSemver("0.1.1-PullRequest.2+2"); @@ -67,7 +67,7 @@ public void CanCalculatePullRequestChangesInheritingConfigFromRemoteRepo() fixture.Repository.CreateBranch("feature/Foo").Checkout(); fixture.Repository.MakeACommit(); - fixture.Repository.CreatePullRequest("feature/Foo", "develop"); + fixture.Repository.CreatePullRequestRef("feature/Foo", "develop", normalise: true); fixture.AssertFullSemver("0.2.0-PullRequest.2+3"); } @@ -85,7 +85,7 @@ public void CanCalculatePullRequestChangesWhenThereAreMultipleMergeCandidates() fixture.Repository.CreateBranch("feature/Foo").Checkout(); fixture.Repository.MakeACommit(); - fixture.Repository.CreatePullRequest("feature/Foo", "develop"); + fixture.Repository.CreatePullRequestRef("feature/Foo", "develop", normalise: true); fixture.AssertFullSemver("0.2.0-PullRequest.2+3"); } @@ -102,7 +102,7 @@ public void CalculatesCorrectVersionAfterReleaseBranchMergedToMaster() fixture.Repository.MakeACommit(); fixture.Repository.MakeACommit(); - fixture.Repository.CreatePullRequest("release/2.0.0", "master"); + fixture.Repository.CreatePullRequestRef("release/2.0.0", "master", normalise: true); fixture.AssertFullSemver("2.0.0-PullRequest.2+0"); } diff --git a/src/GitVersionCore.Tests/IntegrationTests/RemoteRepositoryScenarios.cs b/src/GitVersionCore.Tests/IntegrationTests/RemoteRepositoryScenarios.cs index 5e1bd2023d..ad6d7dafba 100644 --- a/src/GitVersionCore.Tests/IntegrationTests/RemoteRepositoryScenarios.cs +++ b/src/GitVersionCore.Tests/IntegrationTests/RemoteRepositoryScenarios.cs @@ -12,7 +12,7 @@ public void GivenARemoteGitRepositoryWithCommits_ThenClonedLocalShouldMatchRemot using (var fixture = new RemoteRepositoryFixture(new Config())) { fixture.AssertFullSemver("0.1.0+4"); - fixture.AssertFullSemver("0.1.0+4", fixture.LocalRepository); + fixture.AssertFullSemver("0.1.0+4", fixture.LocalRepositoryFixture.Repository); } } @@ -39,7 +39,7 @@ public void GivenARemoteGitRepositoryWithCommitsAndBranches_ThenClonedLocalShoul new Config())) { fixture.AssertFullSemver("1.0.0-beta.1+5"); - fixture.AssertFullSemver("1.0.0-beta.1+5", fixture.LocalRepository); + fixture.AssertFullSemver("1.0.0-beta.1+5", fixture.LocalRepositoryFixture.Repository); } } @@ -50,9 +50,10 @@ public void GivenARemoteGitRepositoryAheadOfLocalRepository_ThenChangesShouldPul { fixture.Repository.MakeACommit(); fixture.AssertFullSemver("0.1.0+5"); - fixture.AssertFullSemver("0.1.0+4", fixture.LocalRepository); - fixture.LocalRepository.Network.Pull(fixture.LocalRepository.Config.BuildSignature(new DateTimeOffset(DateTime.Now)), new PullOptions()); - fixture.AssertFullSemver("0.1.0+5", fixture.LocalRepository); + fixture.AssertFullSemver("0.1.0+4", fixture.LocalRepositoryFixture.Repository); + var buildSignature = fixture.LocalRepositoryFixture.Repository.Config.BuildSignature(new DateTimeOffset(DateTime.Now)); + fixture.LocalRepositoryFixture.Repository.Network.Pull(buildSignature, new PullOptions()); + fixture.AssertFullSemver("0.1.0+5", fixture.LocalRepositoryFixture.Repository); } } @@ -63,22 +64,22 @@ public void GivenARemoteGitRepositoryWhenCheckingOutDetachedhead_UsingExistingIm using (var fixture = new RemoteRepositoryFixture(new Config())) { fixture.IsForTrackedBranchOnly = false; - fixture.LocalRepository.Checkout(fixture.LocalRepository.Head.Tip); + fixture.LocalRepositoryFixture.Repository.Checkout(fixture.LocalRepositoryFixture.Repository.Head.Tip); - Assert.Throws(() => fixture.AssertFullSemver("0.1.0+4", fixture.LocalRepository), "It looks like the branch being examined is a detached Head pointing to commit '{0}'. Without a proper branch name GitVersion cannot determine the build version.", fixture.LocalRepository.Head.Tip.Id.ToString(7)); + Assert.Throws(() => fixture.AssertFullSemver("0.1.0+4", fixture.LocalRepositoryFixture.Repository), + "It looks like the branch being examined is a detached Head pointing to commit '{0}'. Without a proper branch name GitVersion cannot determine the build version.", + fixture.LocalRepositoryFixture.Repository.Head.Tip.Id.ToString(7)); } } [Test] public void GivenARemoteGitRepositoryWhenCheckingOutDetachedhead_UsingTrackingBranchOnlyBehaviourShouldReturnVersion_0_1_4plus5() { - using (var fixture = new RemoteRepositoryFixture(new Config())) { + fixture.LocalRepositoryFixture.Repository.Checkout(fixture.LocalRepositoryFixture.Repository.Head.Tip); - fixture.LocalRepository.Checkout(fixture.LocalRepository.Head.Tip); - - fixture.AssertFullSemver("0.1.0+4", fixture.LocalRepository); + fixture.AssertFullSemver("0.1.0+4", fixture.LocalRepositoryFixture.Repository); } } } \ No newline at end of file diff --git a/src/GitVersionCore.Tests/app.config b/src/GitVersionCore.Tests/app.config new file mode 100644 index 0000000000..b1d2a5a3c8 --- /dev/null +++ b/src/GitVersionCore.Tests/app.config @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/GitVersionCore.Tests/packages.config b/src/GitVersionCore.Tests/packages.config index aba769a07b..27ce6c6f01 100644 --- a/src/GitVersionCore.Tests/packages.config +++ b/src/GitVersionCore.Tests/packages.config @@ -7,6 +7,7 @@ + diff --git a/src/GitVersionCore/BuildServers/AppVeyor.cs b/src/GitVersionCore/BuildServers/AppVeyor.cs index 8d21861cbe..91fb9833ab 100644 --- a/src/GitVersionCore/BuildServers/AppVeyor.cs +++ b/src/GitVersionCore/BuildServers/AppVeyor.cs @@ -59,5 +59,10 @@ public override string[] GenerateSetParameterMessage(string name, string value) string.Format("Adding Environment Variable. name='GitVersion_{0}' value='{1}']", name, value) }; } + + public override string GetCurrentBranch() + { + return null; + } } } \ No newline at end of file diff --git a/src/GitVersionCore/BuildServers/BuildServerBase.cs b/src/GitVersionCore/BuildServers/BuildServerBase.cs index 689355429e..2bc98a1483 100644 --- a/src/GitVersionCore/BuildServers/BuildServerBase.cs +++ b/src/GitVersionCore/BuildServers/BuildServerBase.cs @@ -7,6 +7,7 @@ public abstract class BuildServerBase : IBuildServer public abstract bool CanApplyToCurrentContext(); public abstract string GenerateSetVersionMessage(string versionToUseForBuildNumber); public abstract string[] GenerateSetParameterMessage(string name, string value); + public abstract string GetCurrentBranch(); public virtual void WriteIntegration(Action writer, VersionVariables variables) { diff --git a/src/GitVersionCore/BuildServers/BuildServerList.cs b/src/GitVersionCore/BuildServers/BuildServerList.cs index 26cf9b72b3..1ddbc60200 100644 --- a/src/GitVersionCore/BuildServers/BuildServerList.cs +++ b/src/GitVersionCore/BuildServers/BuildServerList.cs @@ -11,7 +11,8 @@ public static class BuildServerList new TeamCity(), new AppVeyor(), new MyGet(), - new Jenkins() + new Jenkins(), + new VsoAgent() }; public static IEnumerable GetApplicableBuildServers() diff --git a/src/GitVersionCore/BuildServers/ContinuaCi.cs b/src/GitVersionCore/BuildServers/ContinuaCi.cs index 1478fbd65e..dfefee8fef 100644 --- a/src/GitVersionCore/BuildServers/ContinuaCi.cs +++ b/src/GitVersionCore/BuildServers/ContinuaCi.cs @@ -29,6 +29,8 @@ public override string[] GenerateSetParameterMessage(string name, string value) }; } + public override string GetCurrentBranch() { return string.Empty; } + public override string GenerateSetVersionMessage(string versionToUseForBuildNumber) { return string.Format("@@continua[setBuildVersion value='{0}']", versionToUseForBuildNumber); diff --git a/src/GitVersionCore/BuildServers/GitHelper.cs b/src/GitVersionCore/BuildServers/GitHelper.cs index 1d47870e96..b775d8da55 100644 --- a/src/GitVersionCore/BuildServers/GitHelper.cs +++ b/src/GitVersionCore/BuildServers/GitHelper.cs @@ -10,28 +10,29 @@ public static class GitHelper { const string MergeMessageRegexPattern = "refs/heads/(pr|pull(-requests)?/(?[0-9]*)/(merge|head))"; - public static void NormalizeGitDirectory(string gitDirectory, Authentication authentication, bool noFetch) + public static void NormalizeGitDirectory(string gitDirectory, Authentication authentication, bool noFetch, string currentBranch) { - //If noFetch is enabled, then GitVersion will assume that the git repository is normalized before execution, so that fetching from remotes is not required. - if (noFetch) - { - Logger.WriteInfo("Skipping fetching"); - return; - } - using (var repo = new Repository(gitDirectory)) { var remote = EnsureOnlyOneRemoteIsDefined(repo); AddMissingRefSpecs(repo, remote); - Logger.WriteInfo(string.Format("Fetching from remote '{0}' using the following refspecs: {1}.", - remote.Name, string.Join(", ", remote.FetchRefSpecs.Select(r => r.Specification)))); - - var fetchOptions = BuildFetchOptions(authentication.Username, authentication.Password); - repo.Network.Fetch(remote, fetchOptions); + //If noFetch is enabled, then GitVersion will assume that the git repository is normalized before execution, so that fetching from remotes is not required. + if (noFetch) + { + Logger.WriteInfo("Skipping fetching, if GitVersion does not calculate your version as expected you might need to allow fetching or use dynamic repositories"); + } + else + { + Logger.WriteInfo(string.Format("Fetching from remote '{0}' using the following refspecs: {1}.", + remote.Name, string.Join(", ", remote.FetchRefSpecs.Select(r => r.Specification)))); + var fetchOptions = BuildFetchOptions(authentication.Username, authentication.Password); + repo.Network.Fetch(remote, fetchOptions); + } - CreateMissingLocalBranchesFromRemoteTrackingOnes(repo, remote.Name); + EnsureLocalBranchExistsForCurrentBranch(repo, currentBranch); + CreateOrUpdateLocalBranchesFromRemoteTrackingOnes(repo, remote.Name); var headSha = repo.Refs.Head.TargetIdentifier; @@ -42,13 +43,22 @@ public static void NormalizeGitDirectory(string gitDirectory, Authentication aut } Logger.WriteInfo(string.Format("HEAD is detached and points at commit '{0}'.", headSha)); + Logger.WriteInfo(string.Format("Local Refs:\r\n" + string.Join(Environment.NewLine, repo.Refs.FromGlob("*").Select(r => r.CanonicalName)))); // In order to decide whether a fake branch is required or not, first check to see if any local branches have the same commit SHA of the head SHA. // If they do, go ahead and checkout that branch // If no, go ahead and check out a new branch, using the known commit SHA as the pointer var localBranchesWhereCommitShaIsHead = repo.Branches.Where(b => !b.IsRemote && b.Tip.Sha == headSha).ToList(); - if (localBranchesWhereCommitShaIsHead.Count > 1) + var matchingCurrentBranch = !string.IsNullOrEmpty(currentBranch) + ? localBranchesWhereCommitShaIsHead.SingleOrDefault(b => b.CanonicalName.Replace("/heads/", "/") == currentBranch.Replace("/heads/", "/")) + : null; + if (matchingCurrentBranch != null) + { + Logger.WriteInfo(string.Format("Checking out local branch '{0}'.", currentBranch)); + matchingCurrentBranch.Checkout(); + } + else if (localBranchesWhereCommitShaIsHead.Count > 1) { var branchNames = localBranchesWhereCommitShaIsHead.Select(r => r.CanonicalName); var csvNames = string.Join(", ", branchNames); @@ -89,6 +99,30 @@ public static void NormalizeGitDirectory(string gitDirectory, Authentication aut } } + static void EnsureLocalBranchExistsForCurrentBranch(Repository repo, string currentBranch) + { + if (string.IsNullOrEmpty(currentBranch)) return; + var isBranch = currentBranch.Contains("refs/heads"); + var localCanonicalName = isBranch ? currentBranch : currentBranch.Replace("refs/", "refs/heads/"); + var repoTip = repo.Head.Tip; + var repoTipId = repoTip.Id; + + if (repo.Branches.All(b => b.CanonicalName != localCanonicalName)) + { + Logger.WriteInfo(isBranch ? + string.Format("Creating local branch {0}", localCanonicalName) : + string.Format("Creating local branch {0} from ref {1}", localCanonicalName, currentBranch)); + repo.Refs.Add(localCanonicalName, repoTipId); + } + else + { + Logger.WriteInfo(isBranch ? + string.Format("Updating local branch {0} to point at {1}", localCanonicalName, repoTip.Sha) : + string.Format("Updating local branch {0} to match ref {1}", localCanonicalName, currentBranch)); + repo.Refs.UpdateTarget(repo.Refs[localCanonicalName], repoTipId); + } + } + public static bool LooksLikeAValidPullRequestNumber(string issueNumber) { if (string.IsNullOrEmpty(issueNumber)) @@ -147,9 +181,13 @@ static void CreateFakeBranchPointingAtThePullRequestTip(Repository repo, Authent { var remote = repo.Network.Remotes.Single(); - var remoteTips = string.IsNullOrEmpty(authentication.Username) ? + Logger.WriteInfo("Fetching remote refs to see if there is a pull request ref"); + var remoteTips = (string.IsNullOrEmpty(authentication.Username) ? GetRemoteTipsForAnonymousUser(repo, remote) : - GetRemoteTipsUsingUsernamePasswordCredentials(repo, remote, authentication.Username, authentication.Password); + GetRemoteTipsUsingUsernamePasswordCredentials(repo, remote, authentication.Username, authentication.Password)) + .ToList(); + + Logger.WriteInfo("Remote Refs:\r\n" + string.Join(Environment.NewLine, remoteTips.Select(r => r.CanonicalName))); var headTipSha = repo.Head.Tip.Sha; @@ -214,7 +252,7 @@ static IEnumerable GetRemoteTipsForAnonymousUser(Repository rep return repo.Network.ListReferences(remote); } - static void CreateMissingLocalBranchesFromRemoteTrackingOnes(Repository repo, string remoteName) + static void CreateOrUpdateLocalBranchesFromRemoteTrackingOnes(Repository repo, string remoteName) { var prefix = string.Format("refs/remotes/{0}/", remoteName); var remoteHeadCanonicalName = string.Format("{0}{1}", prefix, "HEAD"); @@ -227,7 +265,16 @@ static void CreateMissingLocalBranchesFromRemoteTrackingOnes(Repository repo, st if (repo.Refs.Any(x => x.CanonicalName == localCanonicalName)) { - Logger.WriteInfo(string.Format("Skipping local branch creation since it already exists '{0}'.", remoteTrackingReference.CanonicalName)); + var localRef = repo.Refs[localCanonicalName]; + var remotedirectReference = remoteTrackingReference.ResolveToDirectReference(); + if (localRef.ResolveToDirectReference().TargetIdentifier == remotedirectReference.TargetIdentifier) + { + Logger.WriteInfo(string.Format("Skipping update of '{0}' as it already matches the remote ref.", remoteTrackingReference.CanonicalName)); + continue; + } + var remoteRefTipId = remotedirectReference.Target.Id; + Logger.WriteInfo(string.Format("Updating local ref '{0}' to point at {1}.", remoteTrackingReference.CanonicalName, remoteRefTipId)); + repo.Refs.UpdateTarget(localRef, remoteRefTipId); continue; } Logger.WriteInfo(string.Format("Creating local branch from remote tracking '{0}'.", remoteTrackingReference.CanonicalName)); diff --git a/src/GitVersionCore/BuildServers/IBuildServer.cs b/src/GitVersionCore/BuildServers/IBuildServer.cs index ec5af1f0ec..f48f3ba30f 100644 --- a/src/GitVersionCore/BuildServers/IBuildServer.cs +++ b/src/GitVersionCore/BuildServers/IBuildServer.cs @@ -9,6 +9,6 @@ public interface IBuildServer string[] GenerateSetParameterMessage(string name, string value); void WriteIntegration(Action writer, VersionVariables variables); + string GetCurrentBranch(); } - } diff --git a/src/GitVersionCore/BuildServers/Jenkins.cs b/src/GitVersionCore/BuildServers/Jenkins.cs index d9608741f4..f1970312a8 100644 --- a/src/GitVersionCore/BuildServers/Jenkins.cs +++ b/src/GitVersionCore/BuildServers/Jenkins.cs @@ -26,6 +26,8 @@ public override string GenerateSetVersionMessage(string versionToUseForBuildNumb return versionToUseForBuildNumber; } + public override string GetCurrentBranch() { return string.Empty; } + public override string[] GenerateSetParameterMessage(string name, string value) { return new[] diff --git a/src/GitVersionCore/BuildServers/MyGet.cs b/src/GitVersionCore/BuildServers/MyGet.cs index 0b74e308e7..2f4a1b7fcb 100644 --- a/src/GitVersionCore/BuildServers/MyGet.cs +++ b/src/GitVersionCore/BuildServers/MyGet.cs @@ -13,6 +13,8 @@ public override bool CanApplyToCurrentContext() && buildRunner.Equals("MyGet", StringComparison.InvariantCultureIgnoreCase); } + public override string GetCurrentBranch() { return string.Empty; } + public override string[] GenerateSetParameterMessage(string name, string value) { var messages = new List diff --git a/src/GitVersionCore/BuildServers/TeamCity.cs b/src/GitVersionCore/BuildServers/TeamCity.cs index 2140a886f8..ffb207bace 100644 --- a/src/GitVersionCore/BuildServers/TeamCity.cs +++ b/src/GitVersionCore/BuildServers/TeamCity.cs @@ -9,6 +9,8 @@ public override bool CanApplyToCurrentContext() return !string.IsNullOrEmpty(Environment.GetEnvironmentVariable("TEAMCITY_VERSION")); } + public override string GetCurrentBranch() { return string.Empty; } + public override string[] GenerateSetParameterMessage(string name, string value) { return new[] diff --git a/src/GitVersionCore/BuildServers/VsoAgent.cs b/src/GitVersionCore/BuildServers/VsoAgent.cs new file mode 100644 index 0000000000..d314953a77 --- /dev/null +++ b/src/GitVersionCore/BuildServers/VsoAgent.cs @@ -0,0 +1,31 @@ +namespace GitVersion +{ + using System; + + public class VsoAgent : BuildServerBase + { + public override bool CanApplyToCurrentContext() + { + return !string.IsNullOrEmpty(Environment.GetEnvironmentVariable("TF_BUILD")); + } + + public override string[] GenerateSetParameterMessage(string name, string value) + { + return new[] + { + string.Format("##vso[task.setvariable variable=GitVersion.{0};]{1}", name, value) + }; + } + + public override string GetCurrentBranch() + { + return Environment.GetEnvironmentVariable("BUILD_SOURCEBRANCH"); + } + + public override string GenerateSetVersionMessage(string versionToUseForBuildNumber) + { + // Note: the VSO agent does not yet support updating the build display number from a variable + return null; + } + } +} diff --git a/src/GitVersionCore/ExecuteCore.cs b/src/GitVersionCore/ExecuteCore.cs index 134a25d62c..31fc55af84 100644 --- a/src/GitVersionCore/ExecuteCore.cs +++ b/src/GitVersionCore/ExecuteCore.cs @@ -10,7 +10,14 @@ public static VersionVariables ExecuteGitVersion(IFileSystem fileSystem, string { // Normalise if we are running on build server var gitPreparer = new GitPreparer(targetUrl, dynamicRepositoryLocation, authentication, targetBranch, noFetch, workingDirectory); - gitPreparer.Initialise(BuildServerList.GetApplicableBuildServers().Any()); + var applicableBuildServers = BuildServerList.GetApplicableBuildServers(); + var buildServer = applicableBuildServers.FirstOrDefault(); + var currentBranch = buildServer == null ? null : buildServer.GetCurrentBranch(); + if (!string.IsNullOrEmpty(currentBranch)) + { + Logger.WriteInfo("Branch from build environment: " + currentBranch); + } + gitPreparer.Initialise(buildServer != null, currentBranch); var dotGitDirectory = gitPreparer.GetDotGitDirectory(); var projectRoot = gitPreparer.GetProjectRootDirectory(); Logger.WriteInfo(string.Format("Project root is: " + projectRoot)); diff --git a/src/GitVersionCore/Extensions/ExtensionMethods.git.cs b/src/GitVersionCore/Extensions/ExtensionMethods.git.cs index b8d64f3324..1e92177a80 100644 --- a/src/GitVersionCore/Extensions/ExtensionMethods.git.cs +++ b/src/GitVersionCore/Extensions/ExtensionMethods.git.cs @@ -6,8 +6,8 @@ public static string GetCanonicalBranchName(this string branchName) { if (branchName.IsPullRequest()) { - branchName = branchName.Replace("pull-requests", "pull"); - branchName = branchName.Replace("pr", "pull"); + branchName = branchName.Replace("pull-requests/", "pull/"); + branchName = branchName.Replace("pr/", "pull/"); return string.Format("refs/{0}/head", branchName); } diff --git a/src/GitVersionCore/GitPreparer.cs b/src/GitVersionCore/GitPreparer.cs index 82b8beeacd..31aee35001 100644 --- a/src/GitVersionCore/GitPreparer.cs +++ b/src/GitVersionCore/GitPreparer.cs @@ -31,23 +31,23 @@ public bool IsDynamicGitRepository public string DynamicGitRepositoryPath { get; private set; } - public void Initialise(bool normaliseGitDirectory) + public void Initialise(bool normaliseGitDirectory, string currentBranch) { if (string.IsNullOrWhiteSpace(targetUrl)) { if (normaliseGitDirectory) { - GitHelper.NormalizeGitDirectory(GetDotGitDirectory(), authentication, noFetch); + GitHelper.NormalizeGitDirectory(GetDotGitDirectory(), authentication, noFetch, currentBranch); } return; } - var targetPath = CalculateTemporaryRepositoryPath(targetUrl, dynamicRepositoryLocation); + var tempRepositoryPath = CalculateTemporaryRepositoryPath(targetUrl, dynamicRepositoryLocation); - DynamicGitRepositoryPath = CreateDynamicRepository(targetPath, authentication, targetUrl, targetBranch, noFetch); + DynamicGitRepositoryPath = CreateDynamicRepository(tempRepositoryPath, authentication, targetUrl, targetBranch, noFetch); if (normaliseGitDirectory) { - GitHelper.NormalizeGitDirectory(GetDotGitDirectory(), authentication, noFetch); + GitHelper.NormalizeGitDirectory(GetDotGitDirectory(), authentication, noFetch, currentBranch); } } @@ -116,7 +116,7 @@ static string CreateDynamicRepository(string targetPath, Authentication authenti if (Directory.Exists(targetPath)) { Logger.WriteInfo("Git repository already exists"); - GitHelper.NormalizeGitDirectory(gitDirectory, authentication, noFetch); + GitHelper.NormalizeGitDirectory(gitDirectory, authentication, noFetch, null); Logger.WriteInfo(string.Format("Updating branch '{0}'", targetBranch)); using (var repo = new Repository(targetPath)) { @@ -153,7 +153,7 @@ static string CreateDynamicRepository(string targetPath, Authentication authenti CloneRepository(repositoryUrl, gitDirectory, credentials); // Normalize (download branches) before using the branch - GitHelper.NormalizeGitDirectory(gitDirectory, authentication, noFetch); + GitHelper.NormalizeGitDirectory(gitDirectory, authentication, noFetch, null); using (var repository = new Repository(gitDirectory)) { diff --git a/src/GitVersionCore/GitVersionCore.csproj b/src/GitVersionCore/GitVersionCore.csproj index 650099cd8d..bc9fa54945 100644 --- a/src/GitVersionCore/GitVersionCore.csproj +++ b/src/GitVersionCore/GitVersionCore.csproj @@ -25,6 +25,7 @@ 4 bin\Debug\GitVersionCore.xml 1591 + 5 pdbonly @@ -74,6 +75,7 @@ + diff --git a/src/GitVersionCore/Helpers/ProcessHelper.cs b/src/GitVersionCore/Helpers/ProcessHelper.cs index 2d869d1407..0b7b5120fa 100644 --- a/src/GitVersionCore/Helpers/ProcessHelper.cs +++ b/src/GitVersionCore/Helpers/ProcessHelper.cs @@ -31,7 +31,7 @@ public static Process Start(ProcessStartInfo startInfo) // NOTE: https://msdn.microsoft.com/en-us/library/windows/desktop/ms681382%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396 @asbjornu if (exception.NativeErrorCode == 2) { - throw new FileNotFoundException(String.Format("The executable file '{0}' could not be found.", + throw new FileNotFoundException(string.Format("The executable file '{0}' could not be found.", startInfo.FileName), startInfo.FileName, exception); diff --git a/src/GitVersionExe.Tests/ExecCmdLineArgumentTest.cs b/src/GitVersionExe.Tests/ExecCmdLineArgumentTest.cs index 0fa5f15280..e7bb04c3c8 100644 --- a/src/GitVersionExe.Tests/ExecCmdLineArgumentTest.cs +++ b/src/GitVersionExe.Tests/ExecCmdLineArgumentTest.cs @@ -55,4 +55,31 @@ public void InvalidArgumentsExitCodeShouldNotBeZero() result.Output.ShouldContain("Failed to parse arguments"); } } + + [Test] + public void UsesGitVersionConfigWhenCreatingDynamicRepository() + { + var localRepoPath = PathHelper.GetTempPath(); + var repoBasePath = Path.GetDirectoryName(PathHelper.GetTempPath()); + Directory.CreateDirectory(localRepoPath); + + try + { + using (var remote = new EmptyRepositoryFixture(new Config())) + { + remote.Repository.MakeACommit(); + var configFile = Path.Combine(localRepoPath, "GitVersionConfig.yaml"); + File.WriteAllText(configFile, "next-version: 1.0.0"); + + var arguments = string.Format(" /url {0} /dynamicRepoLocation {1}", remote.RepositoryPath, repoBasePath); + var results = GitVersionHelper.ExecuteIn(localRepoPath, arguments, false); + results.OutputVariables.SemVer.ShouldBe("1.0.0"); + } + } + finally + { + DeleteHelper.DeleteGitRepository(localRepoPath); + DeleteHelper.DeleteGitRepository(repoBasePath); + } + } } \ No newline at end of file diff --git a/src/GitVersionExe.Tests/GitVersionExe.Tests.csproj b/src/GitVersionExe.Tests/GitVersionExe.Tests.csproj index 783ca083d7..66ffd301d5 100644 --- a/src/GitVersionExe.Tests/GitVersionExe.Tests.csproj +++ b/src/GitVersionExe.Tests/GitVersionExe.Tests.csproj @@ -20,6 +20,7 @@ DEBUG;TRACE prompt 4 + 5 full @@ -50,10 +51,26 @@ False ..\packages\NSubstitute.1.8.1.0\lib\net45\NSubstitute.dll + + ..\packages\NUnitTestAdapter.2.0.0\lib\nunit.core.dll + True + + + ..\packages\NUnitTestAdapter.2.0.0\lib\nunit.core.interfaces.dll + True + False ..\packages\NUnit.2.6.4\lib\nunit.framework.dll + + ..\packages\NUnitTestAdapter.2.0.0\lib\nunit.util.dll + True + + + ..\packages\NUnitTestAdapter.2.0.0\lib\NUnit.VisualStudio.TestAdapter.dll + True + ..\packages\Shouldly.2.5.0\lib\net40\Shouldly.dll True @@ -82,6 +99,7 @@ + Designer @@ -92,7 +110,6 @@ - diff --git a/src/GitVersionExe.Tests/app.config b/src/GitVersionExe.Tests/app.config new file mode 100644 index 0000000000..b1d2a5a3c8 --- /dev/null +++ b/src/GitVersionExe.Tests/app.config @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/GitVersionExe.Tests/packages.config b/src/GitVersionExe.Tests/packages.config index 7e97b56f24..1c8173329e 100644 --- a/src/GitVersionExe.Tests/packages.config +++ b/src/GitVersionExe.Tests/packages.config @@ -5,5 +5,6 @@ + \ No newline at end of file diff --git a/src/GitVersionExe/ArgumentParser.cs b/src/GitVersionExe/ArgumentParser.cs index 4772d7056b..620f543570 100644 --- a/src/GitVersionExe/ArgumentParser.cs +++ b/src/GitVersionExe/ArgumentParser.cs @@ -153,11 +153,11 @@ public static Arguments ParseArguments(List commandLineArguments) if (IsSwitch("updateAssemblyInfo", name)) { - if (new[] { "1", "true" }.Contains(value)) + if (new[] { "1", "true" }.Contains(value, StringComparer.OrdinalIgnoreCase)) { arguments.UpdateAssemblyInfo = true; } - else if (new[] { "0", "false" }.Contains(value)) + else if (new[] { "0", "false" }.Contains(value, StringComparer.OrdinalIgnoreCase)) { arguments.UpdateAssemblyInfo = false; } @@ -200,11 +200,11 @@ public static Arguments ParseArguments(List commandLineArguments) if (IsSwitch("showConfig", name)) { - if (new[] { "1", "true" }.Contains(value)) + if (new[] { "1", "true" }.Contains(value, StringComparer.OrdinalIgnoreCase)) { arguments.ShowConfig = true; } - else if (new[] { "0", "false" }.Contains(value)) + else if (new[] { "0", "false" }.Contains(value, StringComparer.OrdinalIgnoreCase)) { arguments.UpdateAssemblyInfo = false; } @@ -289,12 +289,12 @@ static bool IsSwitch(string switchName, string value) value = value.Remove(0, 1); } - return (string.Equals(switchName, value, StringComparison.InvariantCultureIgnoreCase)); + return (string.Equals(switchName, value, StringComparison.OrdinalIgnoreCase)); } static bool IsInit(string singleArgument) { - return singleArgument.Equals("init", StringComparison.InvariantCultureIgnoreCase); + return singleArgument.Equals("init", StringComparison.OrdinalIgnoreCase); } static bool IsHelp(string singleArgument) diff --git a/src/GitVersionExe/GitVersionExe.csproj b/src/GitVersionExe/GitVersionExe.csproj index ad398e2b28..b085191626 100644 --- a/src/GitVersionExe/GitVersionExe.csproj +++ b/src/GitVersionExe/GitVersionExe.csproj @@ -26,6 +26,7 @@ false bin\Debug\GitVersion.xml 1591 + 5 pdbonly @@ -108,7 +109,7 @@ - + @@ -132,7 +133,7 @@ ]]> - + @@ -147,6 +148,13 @@ + + + + + + + diff --git a/src/GitVersionTask.Tests/GitVersionTask.Tests.csproj b/src/GitVersionTask.Tests/GitVersionTask.Tests.csproj index eae6dc6d93..515921759f 100644 --- a/src/GitVersionTask.Tests/GitVersionTask.Tests.csproj +++ b/src/GitVersionTask.Tests/GitVersionTask.Tests.csproj @@ -24,6 +24,7 @@ prompt 4 false + 5 full @@ -75,6 +76,13 @@ ..\packages\Newtonsoft.Json.7.0.1\lib\net45\Newtonsoft.Json.dll + + + ..\packages\NUnitTestAdapter.2.0.0\lib\nunit.core.dll + True + + + ..\packages\NUnitTestAdapter.2.0.0\lib\nunit.core.interfaces.dll True @@ -85,6 +93,14 @@ ..\packages\ObjectApproval.1.2.0\Lib\NET40\ObjectApproval.dll True + + ..\packages\NUnitTestAdapter.2.0.0\lib\nunit.util.dll + True + + + ..\packages\NUnitTestAdapter.2.0.0\lib\NUnit.VisualStudio.TestAdapter.dll + True + ..\packages\Shouldly.2.5.0\lib\net40\Shouldly.dll True @@ -121,93 +137,6 @@ Designer - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -216,7 +145,6 @@ - diff --git a/src/GitVersionTask.Tests/Resources/.gitattributes b/src/GitVersionTask.Tests/Resources/.gitattributes deleted file mode 100644 index 23d9bdb29a..0000000000 --- a/src/GitVersionTask.Tests/Resources/.gitattributes +++ /dev/null @@ -1 +0,0 @@ -* binary diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/README b/src/GitVersionTask.Tests/Resources/asbm_wd/README deleted file mode 100644 index 114c739bec..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/README +++ /dev/null @@ -1,6 +0,0 @@ -Content -Zero -One -Two -Three -Four diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/RELEASE b/src/GitVersionTask.Tests/Resources/asbm_wd/RELEASE deleted file mode 100644 index 6e3f54b7e7..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/RELEASE +++ /dev/null @@ -1,5 +0,0 @@ -Content -One -Two -Three -Four diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/f1/README b/src/GitVersionTask.Tests/Resources/asbm_wd/f1/README deleted file mode 100644 index 2b2d7c32c6..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/f1/README +++ /dev/null @@ -1,3 +0,0 @@ -Content -One -Two diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/f2/README b/src/GitVersionTask.Tests/Resources/asbm_wd/f2/README deleted file mode 100644 index 6e3f54b7e7..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/f2/README +++ /dev/null @@ -1,5 +0,0 @@ -Content -One -Two -Three -Four diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/HEAD b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/HEAD deleted file mode 100644 index 7ee7e4fec8..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/HEAD +++ /dev/null @@ -1 +0,0 @@ -ref: refs/heads/develop diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/config b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/config deleted file mode 100644 index 78387c50b4..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/config +++ /dev/null @@ -1,8 +0,0 @@ -[core] - repositoryformatversion = 0 - filemode = false - bare = false - logallrefupdates = true - symlinks = false - ignorecase = true - hideDotFiles = dotGitOnly diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/index b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/index deleted file mode 100644 index dade3a7235..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/index and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/HEAD b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/HEAD deleted file mode 100644 index ebf70464e2..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/HEAD +++ /dev/null @@ -1,60 +0,0 @@ -0000000000000000000000000000000000000000 86925f3dbe9612b1761f4b81c7cca537042d1ba5 nulltoken 1384689111 +0100 commit (initial): Initial commit -86925f3dbe9612b1761f4b81c7cca537042d1ba5 86925f3dbe9612b1761f4b81c7cca537042d1ba5 nulltoken 1384689191 +0100 checkout: moving from master to develop -86925f3dbe9612b1761f4b81c7cca537042d1ba5 40028d4ac34223056cb975dce5fb92055efcf00a nulltoken 1384689444 +0100 commit: develop -40028d4ac34223056cb975dce5fb92055efcf00a 2fcdc8a05d7ed0a77d80a6857c5622fab10e103a nulltoken 1384689470 +0100 commit: develop -2fcdc8a05d7ed0a77d80a6857c5622fab10e103a 83099d424b1618a2019b22d234d9ebc8d0254fc1 nulltoken 1384689488 +0100 commit: develop -83099d424b1618a2019b22d234d9ebc8d0254fc1 83099d424b1618a2019b22d234d9ebc8d0254fc1 nulltoken 1384690054 +0100 checkout: moving from develop to feature/one -83099d424b1618a2019b22d234d9ebc8d0254fc1 147f85a5617bcb5794a51b51c3891f34c9fd004d nulltoken 1384690156 +0100 commit: feature one -147f85a5617bcb5794a51b51c3891f34c9fd004d 83099d424b1618a2019b22d234d9ebc8d0254fc1 nulltoken 1384690183 +0100 checkout: moving from feature/one to develop -83099d424b1618a2019b22d234d9ebc8d0254fc1 f698199306b8e736cf63c393bbc1016da580ca57 nulltoken 1384690225 +0100 commit: develop -f698199306b8e736cf63c393bbc1016da580ca57 f698199306b8e736cf63c393bbc1016da580ca57 nulltoken 1384690244 +0100 checkout: moving from develop to feature/two -f698199306b8e736cf63c393bbc1016da580ca57 170909070ae8038496a9516cd3c18e078ea51063 nulltoken 1384690298 +0100 commit: feature two -170909070ae8038496a9516cd3c18e078ea51063 147f85a5617bcb5794a51b51c3891f34c9fd004d nulltoken 1384690320 +0100 checkout: moving from feature/two to feature/one -147f85a5617bcb5794a51b51c3891f34c9fd004d e0dbe2b9e664f1dcbccffae5b54be943f23aa5d0 nulltoken 1384690393 +0100 commit: feature one -e0dbe2b9e664f1dcbccffae5b54be943f23aa5d0 170909070ae8038496a9516cd3c18e078ea51063 nulltoken 1384690402 +0100 checkout: moving from feature/one to feature/two -170909070ae8038496a9516cd3c18e078ea51063 e0dbe2b9e664f1dcbccffae5b54be943f23aa5d0 nulltoken 1384690493 +0100 checkout: moving from feature/two to feature/one -e0dbe2b9e664f1dcbccffae5b54be943f23aa5d0 147f85a5617bcb5794a51b51c3891f34c9fd004d nulltoken 1384690500 +0100 reset: moving to 147f85a5617bcb5794a51b51c3891f34c9fd004d -147f85a5617bcb5794a51b51c3891f34c9fd004d 86925f3dbe9612b1761f4b81c7cca537042d1ba5 nulltoken 1384690588 +0100 checkout: moving from feature/one to hotfix/0.2.0 -86925f3dbe9612b1761f4b81c7cca537042d1ba5 3c2b9efe0e90aa945bdb27d02e4bc00574e019b8 nulltoken 1384690648 +0100 commit: hotfix -3c2b9efe0e90aa945bdb27d02e4bc00574e019b8 86925f3dbe9612b1761f4b81c7cca537042d1ba5 nulltoken 1384690768 +0100 checkout: moving from hotfix/0.2.0 to master -86925f3dbe9612b1761f4b81c7cca537042d1ba5 19f38d066324ff2329881d31f520d16a08ba5da6 nulltoken 1384690787 +0100 merge hotfix/0.2.0: Merge made by the 'recursive' strategy. -19f38d066324ff2329881d31f520d16a08ba5da6 147f85a5617bcb5794a51b51c3891f34c9fd004d nulltoken 1384690898 +0100 checkout: moving from master to feature/one -147f85a5617bcb5794a51b51c3891f34c9fd004d 6e6ea6acb480aa7eb7c437e4178840503dd26c13 nulltoken 1384690934 +0100 commit: feature one -6e6ea6acb480aa7eb7c437e4178840503dd26c13 170909070ae8038496a9516cd3c18e078ea51063 nulltoken 1384690948 +0100 checkout: moving from feature/one to feature/two -170909070ae8038496a9516cd3c18e078ea51063 33588121f324bf45cc542af72c026589cd699779 nulltoken 1384690979 +0100 commit: feature two -33588121f324bf45cc542af72c026589cd699779 f698199306b8e736cf63c393bbc1016da580ca57 nulltoken 1384691008 +0100 checkout: moving from feature/two to develop -f698199306b8e736cf63c393bbc1016da580ca57 8db58aea340c97a28a918d030a1214f2c841fa99 nulltoken 1384691071 +0100 commit (merge): Merge branch 'hotfix/0.2.0' into develop -8db58aea340c97a28a918d030a1214f2c841fa99 33588121f324bf45cc542af72c026589cd699779 nulltoken 1384691096 +0100 checkout: moving from develop to feature/two -33588121f324bf45cc542af72c026589cd699779 1caa50872fa7d3487ebcc9aa320d1834e06c6863 nulltoken 1384691132 +0100 commit: feature two -1caa50872fa7d3487ebcc9aa320d1834e06c6863 8db58aea340c97a28a918d030a1214f2c841fa99 nulltoken 1384691165 +0100 checkout: moving from feature/two to develop -8db58aea340c97a28a918d030a1214f2c841fa99 76f96a5d150ff68bb90508203b7ccb480e4ca7f5 nulltoken 1384691189 +0100 merge feature/two: Merge made by the 'recursive' strategy. -76f96a5d150ff68bb90508203b7ccb480e4ca7f5 76f96a5d150ff68bb90508203b7ccb480e4ca7f5 nulltoken 1384691247 +0100 checkout: moving from develop to release/1.0.0 -76f96a5d150ff68bb90508203b7ccb480e4ca7f5 77b9a191b2a9dca666484f4094d1ed7073341c45 nulltoken 1384691415 +0100 commit: release -77b9a191b2a9dca666484f4094d1ed7073341c45 a3c1b97ba896a9e7b4ee7de7804b6f4c7041b28a nulltoken 1384691443 +0100 commit: release -a3c1b97ba896a9e7b4ee7de7804b6f4c7041b28a 76f96a5d150ff68bb90508203b7ccb480e4ca7f5 nulltoken 1384691615 +0100 checkout: moving from release/1.0.0 to develop -76f96a5d150ff68bb90508203b7ccb480e4ca7f5 4e1dcbb0c75a0295c7bd83cb72995966eb31ae36 nulltoken 1384691643 +0100 merge release/1.0.0: Merge made by the 'recursive' strategy. -4e1dcbb0c75a0295c7bd83cb72995966eb31ae36 6e6ea6acb480aa7eb7c437e4178840503dd26c13 nulltoken 1384691682 +0100 checkout: moving from develop to feature/one -6e6ea6acb480aa7eb7c437e4178840503dd26c13 368b815d3ae7bf6d301ff760a8d674bb736d6905 nulltoken 1384691912 +0100 commit: feature one -368b815d3ae7bf6d301ff760a8d674bb736d6905 1caa50872fa7d3487ebcc9aa320d1834e06c6863 nulltoken 1384691942 +0100 checkout: moving from feature/one to feature/two -1caa50872fa7d3487ebcc9aa320d1834e06c6863 783963e7d7b8a7b69cbf1bac5c698945e2b1cf2e nulltoken 1384691957 +0100 merge develop: Merge made by the 'recursive' strategy. -783963e7d7b8a7b69cbf1bac5c698945e2b1cf2e a3c1b97ba896a9e7b4ee7de7804b6f4c7041b28a nulltoken 1384691983 +0100 checkout: moving from feature/two to release/1.0.0 -a3c1b97ba896a9e7b4ee7de7804b6f4c7041b28a c8630d186449f79df6fd2bdea5e0ec7e02af5834 nulltoken 1384692399 +0100 commit: release -c8630d186449f79df6fd2bdea5e0ec7e02af5834 9eee301edb8541c422189d3f840465979be7243e nulltoken 1384692429 +0100 commit: release -9eee301edb8541c422189d3f840465979be7243e 783963e7d7b8a7b69cbf1bac5c698945e2b1cf2e nulltoken 1384692479 +0100 checkout: moving from release/1.0.0 to feature/two -783963e7d7b8a7b69cbf1bac5c698945e2b1cf2e 998c3a97690c79a84b1a5e2caeb27c6f43289ac9 nulltoken 1384692529 +0100 commit: feature two -998c3a97690c79a84b1a5e2caeb27c6f43289ac9 4e1dcbb0c75a0295c7bd83cb72995966eb31ae36 nulltoken 1384692582 +0100 checkout: moving from feature/two to develop -4e1dcbb0c75a0295c7bd83cb72995966eb31ae36 19f38d066324ff2329881d31f520d16a08ba5da6 nulltoken 1384692607 +0100 checkout: moving from develop to master -19f38d066324ff2329881d31f520d16a08ba5da6 4e1dcbb0c75a0295c7bd83cb72995966eb31ae36 nulltoken 1384692623 +0100 checkout: moving from master to develop -4e1dcbb0c75a0295c7bd83cb72995966eb31ae36 e8844b2adba55ca169e97a2ed2ec7f14d0a84152 nulltoken 1384692635 +0100 merge release/1.0.0: Merge made by the 'recursive' strategy. -e8844b2adba55ca169e97a2ed2ec7f14d0a84152 998c3a97690c79a84b1a5e2caeb27c6f43289ac9 nulltoken 1384692646 +0100 checkout: moving from develop to feature/two -998c3a97690c79a84b1a5e2caeb27c6f43289ac9 8ecdfe1113dc937955b37cc25fa1d3b16b8c3f58 nulltoken 1384692671 +0100 commit: feature two -8ecdfe1113dc937955b37cc25fa1d3b16b8c3f58 19f38d066324ff2329881d31f520d16a08ba5da6 nulltoken 1384692687 +0100 checkout: moving from feature/two to master -19f38d066324ff2329881d31f520d16a08ba5da6 f01ff126101b1b053c612b82ef2182c69fe1b3a9 nulltoken 1384692700 +0100 merge release/1.0.0: Merge made by the 'recursive' strategy. -f01ff126101b1b053c612b82ef2182c69fe1b3a9 e8844b2adba55ca169e97a2ed2ec7f14d0a84152 nulltoken 1384692759 +0100 checkout: moving from master to develop -e8844b2adba55ca169e97a2ed2ec7f14d0a84152 f44e5fa97149732d9dba9b6cb7f3ed9ddffeb38d nulltoken 1384692937 +0100 merge feature/one feature/two: Merge made by the 'octopus' strategy. -f44e5fa97149732d9dba9b6cb7f3ed9ddffeb38d f44e5fa97149732d9dba9b6cb7f3ed9ddffeb38d nulltoken 1384693007 +0100 checkout: moving from develop to release/1.0.1 -f44e5fa97149732d9dba9b6cb7f3ed9ddffeb38d 7cc6bc58d6f985de0f5ce453b677d8f16b6cc2b6 nulltoken 1384693074 +0100 commit: release -7cc6bc58d6f985de0f5ce453b677d8f16b6cc2b6 f01ff126101b1b053c612b82ef2182c69fe1b3a9 nulltoken 1384693084 +0100 checkout: moving from release/1.0.1 to master -f01ff126101b1b053c612b82ef2182c69fe1b3a9 ac9ea033d52a0e82aff1c78bd662c7141f5af732 nulltoken 1384693115 +0100 merge release/1.0.1: Merge made by the 'recursive' strategy. -ac9ea033d52a0e82aff1c78bd662c7141f5af732 f44e5fa97149732d9dba9b6cb7f3ed9ddffeb38d nulltoken 1384693164 +0100 checkout: moving from master to develop -f44e5fa97149732d9dba9b6cb7f3ed9ddffeb38d 469f85198036004654a83045a70e9893797180b1 nulltoken 1384693179 +0100 merge release/1.0.1: Merge made by the 'recursive' strategy. diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/refs/heads/develop b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/refs/heads/develop deleted file mode 100644 index d97d2a5c34..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/refs/heads/develop +++ /dev/null @@ -1,11 +0,0 @@ -0000000000000000000000000000000000000000 86925f3dbe9612b1761f4b81c7cca537042d1ba5 nulltoken 1384689191 +0100 branch: Created from 86925f3dbe9612b1761f4b81c7cca537042d1ba5 -86925f3dbe9612b1761f4b81c7cca537042d1ba5 40028d4ac34223056cb975dce5fb92055efcf00a nulltoken 1384689444 +0100 commit: develop -40028d4ac34223056cb975dce5fb92055efcf00a 2fcdc8a05d7ed0a77d80a6857c5622fab10e103a nulltoken 1384689470 +0100 commit: develop -2fcdc8a05d7ed0a77d80a6857c5622fab10e103a 83099d424b1618a2019b22d234d9ebc8d0254fc1 nulltoken 1384689488 +0100 commit: develop -83099d424b1618a2019b22d234d9ebc8d0254fc1 f698199306b8e736cf63c393bbc1016da580ca57 nulltoken 1384690225 +0100 commit: develop -f698199306b8e736cf63c393bbc1016da580ca57 8db58aea340c97a28a918d030a1214f2c841fa99 nulltoken 1384691071 +0100 commit (merge): Merge branch 'hotfix/0.2.0' into develop -8db58aea340c97a28a918d030a1214f2c841fa99 76f96a5d150ff68bb90508203b7ccb480e4ca7f5 nulltoken 1384691189 +0100 merge feature/two: Merge made by the 'recursive' strategy. -76f96a5d150ff68bb90508203b7ccb480e4ca7f5 4e1dcbb0c75a0295c7bd83cb72995966eb31ae36 nulltoken 1384691643 +0100 merge release/1.0.0: Merge made by the 'recursive' strategy. -4e1dcbb0c75a0295c7bd83cb72995966eb31ae36 e8844b2adba55ca169e97a2ed2ec7f14d0a84152 nulltoken 1384692635 +0100 merge release/1.0.0: Merge made by the 'recursive' strategy. -e8844b2adba55ca169e97a2ed2ec7f14d0a84152 f44e5fa97149732d9dba9b6cb7f3ed9ddffeb38d nulltoken 1384692937 +0100 merge feature/one feature/two: Merge made by the 'octopus' strategy. -f44e5fa97149732d9dba9b6cb7f3ed9ddffeb38d 469f85198036004654a83045a70e9893797180b1 nulltoken 1384693179 +0100 merge release/1.0.1: Merge made by the 'recursive' strategy. diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/refs/heads/feature/one b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/refs/heads/feature/one deleted file mode 100644 index 47e5c6919c..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/refs/heads/feature/one +++ /dev/null @@ -1,6 +0,0 @@ -0000000000000000000000000000000000000000 83099d424b1618a2019b22d234d9ebc8d0254fc1 nulltoken 1384690054 +0100 branch: Created from 83099d424b1618a2019b22d234d9ebc8d0254fc1 -83099d424b1618a2019b22d234d9ebc8d0254fc1 147f85a5617bcb5794a51b51c3891f34c9fd004d nulltoken 1384690156 +0100 commit: feature one -147f85a5617bcb5794a51b51c3891f34c9fd004d e0dbe2b9e664f1dcbccffae5b54be943f23aa5d0 nulltoken 1384690393 +0100 commit: feature one -e0dbe2b9e664f1dcbccffae5b54be943f23aa5d0 147f85a5617bcb5794a51b51c3891f34c9fd004d nulltoken 1384690500 +0100 reset: moving to 147f85a5617bcb5794a51b51c3891f34c9fd004d -147f85a5617bcb5794a51b51c3891f34c9fd004d 6e6ea6acb480aa7eb7c437e4178840503dd26c13 nulltoken 1384690934 +0100 commit: feature one -6e6ea6acb480aa7eb7c437e4178840503dd26c13 368b815d3ae7bf6d301ff760a8d674bb736d6905 nulltoken 1384691912 +0100 commit: feature one diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/refs/heads/feature/two b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/refs/heads/feature/two deleted file mode 100644 index 0ca72cf3e0..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/refs/heads/feature/two +++ /dev/null @@ -1,7 +0,0 @@ -0000000000000000000000000000000000000000 f698199306b8e736cf63c393bbc1016da580ca57 nulltoken 1384690244 +0100 branch: Created from f698199306b8e736cf63c393bbc1016da580ca57 -f698199306b8e736cf63c393bbc1016da580ca57 170909070ae8038496a9516cd3c18e078ea51063 nulltoken 1384690298 +0100 commit: feature two -170909070ae8038496a9516cd3c18e078ea51063 33588121f324bf45cc542af72c026589cd699779 nulltoken 1384690979 +0100 commit: feature two -33588121f324bf45cc542af72c026589cd699779 1caa50872fa7d3487ebcc9aa320d1834e06c6863 nulltoken 1384691132 +0100 commit: feature two -1caa50872fa7d3487ebcc9aa320d1834e06c6863 783963e7d7b8a7b69cbf1bac5c698945e2b1cf2e nulltoken 1384691957 +0100 merge develop: Merge made by the 'recursive' strategy. -783963e7d7b8a7b69cbf1bac5c698945e2b1cf2e 998c3a97690c79a84b1a5e2caeb27c6f43289ac9 nulltoken 1384692529 +0100 commit: feature two -998c3a97690c79a84b1a5e2caeb27c6f43289ac9 8ecdfe1113dc937955b37cc25fa1d3b16b8c3f58 nulltoken 1384692671 +0100 commit: feature two diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/refs/heads/hotfix/0.2.0 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/refs/heads/hotfix/0.2.0 deleted file mode 100644 index f22efee2af..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/refs/heads/hotfix/0.2.0 +++ /dev/null @@ -1,2 +0,0 @@ -0000000000000000000000000000000000000000 86925f3dbe9612b1761f4b81c7cca537042d1ba5 nulltoken 1384690588 +0100 branch: Created from 86925f3dbe9612b1761f4b81c7cca537042d1ba5 -86925f3dbe9612b1761f4b81c7cca537042d1ba5 3c2b9efe0e90aa945bdb27d02e4bc00574e019b8 nulltoken 1384690648 +0100 commit: hotfix diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/refs/heads/master b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/refs/heads/master deleted file mode 100644 index 1718f3695f..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/logs/refs/heads/master +++ /dev/null @@ -1,4 +0,0 @@ -0000000000000000000000000000000000000000 86925f3dbe9612b1761f4b81c7cca537042d1ba5 nulltoken 1384689111 +0100 commit (initial): Initial commit -86925f3dbe9612b1761f4b81c7cca537042d1ba5 19f38d066324ff2329881d31f520d16a08ba5da6 nulltoken 1384690787 +0100 merge hotfix/0.2.0: Merge made by the 'recursive' strategy. -19f38d066324ff2329881d31f520d16a08ba5da6 f01ff126101b1b053c612b82ef2182c69fe1b3a9 nulltoken 1384692700 +0100 merge release/1.0.0: Merge made by the 'recursive' strategy. -f01ff126101b1b053c612b82ef2182c69fe1b3a9 ac9ea033d52a0e82aff1c78bd662c7141f5af732 nulltoken 1384693115 +0100 merge release/1.0.1: Merge made by the 'recursive' strategy. diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/0b/f808218d379930ce5c8c4aa25ab3c167cbc93f b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/0b/f808218d379930ce5c8c4aa25ab3c167cbc93f deleted file mode 100644 index 3d56fd78ca..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/0b/f808218d379930ce5c8c4aa25ab3c167cbc93f and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/14/7f85a5617bcb5794a51b51c3891f34c9fd004d b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/14/7f85a5617bcb5794a51b51c3891f34c9fd004d deleted file mode 100644 index 23f6eb0734..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/14/7f85a5617bcb5794a51b51c3891f34c9fd004d and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/17/0909070ae8038496a9516cd3c18e078ea51063 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/17/0909070ae8038496a9516cd3c18e078ea51063 deleted file mode 100644 index e76b4c1d86..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/17/0909070ae8038496a9516cd3c18e078ea51063 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/19/f38d066324ff2329881d31f520d16a08ba5da6 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/19/f38d066324ff2329881d31f520d16a08ba5da6 deleted file mode 100644 index 298d2e2460..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/19/f38d066324ff2329881d31f520d16a08ba5da6 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/1c/aa50872fa7d3487ebcc9aa320d1834e06c6863 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/1c/aa50872fa7d3487ebcc9aa320d1834e06c6863 deleted file mode 100644 index 26e7324ef4..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/1c/aa50872fa7d3487ebcc9aa320d1834e06c6863 +++ /dev/null @@ -1,2 +0,0 @@ -x��M -�0@a�9E�B�L& �Ub:�Ŧ������>���V�24Zs�Y{q���$��L�a)8bk��H�;oC[�b�Hw!W�#���.�2��BH*��ٺ��u�ś�p徔I����=j^֩�z�`#�`Q� ��zL��+�<��z|��@iH \ No newline at end of file diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/1f/596be30b7576b833b6fcdea091b27be529e55a b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/1f/596be30b7576b833b6fcdea091b27be529e55a deleted file mode 100644 index fb73cd4971..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/1f/596be30b7576b833b6fcdea091b27be529e55a and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/2e/10bddd9d58ae54086ef05c1764449b259ce649 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/2e/10bddd9d58ae54086ef05c1764449b259ce649 deleted file mode 100644 index 1b85442507..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/2e/10bddd9d58ae54086ef05c1764449b259ce649 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/2f/cdc8a05d7ed0a77d80a6857c5622fab10e103a b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/2f/cdc8a05d7ed0a77d80a6857c5622fab10e103a deleted file mode 100644 index 112aa55f61..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/2f/cdc8a05d7ed0a77d80a6857c5622fab10e103a and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/33/588121f324bf45cc542af72c026589cd699779 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/33/588121f324bf45cc542af72c026589cd699779 deleted file mode 100644 index 5963c1a2f1..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/33/588121f324bf45cc542af72c026589cd699779 +++ /dev/null @@ -1,3 +0,0 @@ -x��] -�0�}�)�](��D�ʺ�j�i$�x}s��a�����f���D�f4�QX�pt9,��؜�e�)&�F�՛��t�4�$��6yJN{Ά��Cr�Qt�gm����Kv�H���H+��= -��ĵ\A�֐��Q�u���'��~4����.�IR \ No newline at end of file diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/36/8b815d3ae7bf6d301ff760a8d674bb736d6905 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/36/8b815d3ae7bf6d301ff760a8d674bb736d6905 deleted file mode 100644 index 73215757f5..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/36/8b815d3ae7bf6d301ff760a8d674bb736d6905 +++ /dev/null @@ -1,3 +0,0 @@ -x��A� Faל���` -%1ƫ �WK1H�gp��/y�պm�FtbL q -9p�`����&ňB��R��ұ��!^r�DR��؄yf�ȕb}6N�1����ض�^��}͗������n���M7��&��d�ԯ�&��j���C�� ��J[ \ No newline at end of file diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/36/d633187666ad663195243d28b3db6e780a7943 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/36/d633187666ad663195243d28b3db6e780a7943 deleted file mode 100644 index 1ed18345b8..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/36/d633187666ad663195243d28b3db6e780a7943 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/38/622989b974467de316efb18e381f3c9b125cce b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/38/622989b974467de316efb18e381f3c9b125cce deleted file mode 100644 index 5648fb0a7e..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/38/622989b974467de316efb18e381f3c9b125cce and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/39/c9f3681a231e1610032eaea2db727349e34f21 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/39/c9f3681a231e1610032eaea2db727349e34f21 deleted file mode 100644 index 43859a6ac1..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/39/c9f3681a231e1610032eaea2db727349e34f21 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/3c/2b9efe0e90aa945bdb27d02e4bc00574e019b8 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/3c/2b9efe0e90aa945bdb27d02e4bc00574e019b8 deleted file mode 100644 index 8f0a322b4b..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/3c/2b9efe0e90aa945bdb27d02e4bc00574e019b8 +++ /dev/null @@ -1,2 +0,0 @@ -x��Q -!��=�����:�BDWul��5̠��z��?�Z���4��&�����(B��6ڄ�#��DkՓ�C{�ʜ�aqPl�������X����ں>��>�C}�*}KS�^�u�W��)�z�0{�q��cԯ�&�����F�>� �G� \ No newline at end of file diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/3c/63a1eebb6d6c24c465f672e37f048b61022221 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/3c/63a1eebb6d6c24c465f672e37f048b61022221 deleted file mode 100644 index adaacf6518..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/3c/63a1eebb6d6c24c465f672e37f048b61022221 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/40/028d4ac34223056cb975dce5fb92055efcf00a b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/40/028d4ac34223056cb975dce5fb92055efcf00a deleted file mode 100644 index 22285ba050..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/40/028d4ac34223056cb975dce5fb92055efcf00a and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/44/629d386d8830c1664feea7bc4f93db3212900b b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/44/629d386d8830c1664feea7bc4f93db3212900b deleted file mode 100644 index 10047f8268..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/44/629d386d8830c1664feea7bc4f93db3212900b and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/44/aa7dac0deeb5cb94a3882f1cb47acc3024f006 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/44/aa7dac0deeb5cb94a3882f1cb47acc3024f006 deleted file mode 100644 index 660dedb146..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/44/aa7dac0deeb5cb94a3882f1cb47acc3024f006 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/44/ee1d1655855442eca5586fb764ee65682f1c66 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/44/ee1d1655855442eca5586fb764ee65682f1c66 deleted file mode 100644 index a9134612e5..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/44/ee1d1655855442eca5586fb764ee65682f1c66 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/46/9f85198036004654a83045a70e9893797180b1 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/46/9f85198036004654a83045a70e9893797180b1 deleted file mode 100644 index 25c6af5446..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/46/9f85198036004654a83045a70e9893797180b1 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/46/f0e74d0d4213af6a1ed342bc2c4b9548ae0e0b b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/46/f0e74d0d4213af6a1ed342bc2c4b9548ae0e0b deleted file mode 100644 index 4381444e27..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/46/f0e74d0d4213af6a1ed342bc2c4b9548ae0e0b and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/4d/03a08ecec3c8e05d7f4bf4dd64ca49895564c2 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/4d/03a08ecec3c8e05d7f4bf4dd64ca49895564c2 deleted file mode 100644 index 054310c3dd..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/4d/03a08ecec3c8e05d7f4bf4dd64ca49895564c2 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/4e/1dcbb0c75a0295c7bd83cb72995966eb31ae36 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/4e/1dcbb0c75a0295c7bd83cb72995966eb31ae36 deleted file mode 100644 index 30cc8adb77..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/4e/1dcbb0c75a0295c7bd83cb72995966eb31ae36 +++ /dev/null @@ -1,2 +0,0 @@ -x��;n�0 @;��2p)��(�^�� %*1jY������ t}xox�պ �^FW"��l��!XL�9*��%Q�6�]�e�s�c�w%:^�Y�D"���S -��ؗ��g��D/�,�R�Y}@W(y$#K�����:�}�[xת}Ks�^��y���sj�� �qd� �t�sj�?��K�UA:�����C�̌3^`;F��?���� { a \ No newline at end of file diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/55/ac65155f01ed2ee5d179a4b4c28822d99a0b44 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/55/ac65155f01ed2ee5d179a4b4c28822d99a0b44 deleted file mode 100644 index cddaeafd7b..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/55/ac65155f01ed2ee5d179a4b4c28822d99a0b44 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/5a/4a40756e24d225a87cca1bc4368a57fb111967 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/5a/4a40756e24d225a87cca1bc4368a57fb111967 deleted file mode 100644 index ceee9eb382..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/5a/4a40756e24d225a87cca1bc4368a57fb111967 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/5d/9de134ef149ef17be9f86fd4da35f052f27d7a b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/5d/9de134ef149ef17be9f86fd4da35f052f27d7a deleted file mode 100644 index 1c37b38e66..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/5d/9de134ef149ef17be9f86fd4da35f052f27d7a and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/66/2f458f1a8fe3e37c844adaf243900ff3f88bcf b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/66/2f458f1a8fe3e37c844adaf243900ff3f88bcf deleted file mode 100644 index a89986b0f6..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/66/2f458f1a8fe3e37c844adaf243900ff3f88bcf and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/6e/6ea6acb480aa7eb7c437e4178840503dd26c13 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/6e/6ea6acb480aa7eb7c437e4178840503dd26c13 deleted file mode 100644 index a8dc9ae41e..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/6e/6ea6acb480aa7eb7c437e4178840503dd26c13 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/6f/526710a24f41e97d4f61d1fc319154e3096184 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/6f/526710a24f41e97d4f61d1fc319154e3096184 deleted file mode 100644 index 08eedafbaa..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/6f/526710a24f41e97d4f61d1fc319154e3096184 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/74/09b385891de9296b2c90795b9c5fb4a1617cc5 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/74/09b385891de9296b2c90795b9c5fb4a1617cc5 deleted file mode 100644 index 1279c1308a..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/74/09b385891de9296b2c90795b9c5fb4a1617cc5 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/76/f96a5d150ff68bb90508203b7ccb480e4ca7f5 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/76/f96a5d150ff68bb90508203b7ccb480e4ca7f5 deleted file mode 100644 index abe14faba7..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/76/f96a5d150ff68bb90508203b7ccb480e4ca7f5 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/77/b9a191b2a9dca666484f4094d1ed7073341c45 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/77/b9a191b2a9dca666484f4094d1ed7073341c45 deleted file mode 100644 index 2ff3c28d2d..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/77/b9a191b2a9dca666484f4094d1ed7073341c45 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/78/3963e7d7b8a7b69cbf1bac5c698945e2b1cf2e b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/78/3963e7d7b8a7b69cbf1bac5c698945e2b1cf2e deleted file mode 100644 index a957c6ef2b..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/78/3963e7d7b8a7b69cbf1bac5c698945e2b1cf2e and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/7c/c6bc58d6f985de0f5ce453b677d8f16b6cc2b6 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/7c/c6bc58d6f985de0f5ce453b677d8f16b6cc2b6 deleted file mode 100644 index 256478f178..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/7c/c6bc58d6f985de0f5ce453b677d8f16b6cc2b6 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/83/099d424b1618a2019b22d234d9ebc8d0254fc1 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/83/099d424b1618a2019b22d234d9ebc8d0254fc1 deleted file mode 100644 index ebfcea3d28..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/83/099d424b1618a2019b22d234d9ebc8d0254fc1 +++ /dev/null @@ -1,4 +0,0 @@ -x��A -�0@Q�9E��L&M2�2�L��4%F�o���Ã�k)K���ԛ�%�"ct�S�Dăh E&������M��Y21I*�) G -)��8��@x6������Y�^_�٫mK��� -����zɵܬ�4D"{`�zLv��ѯ�u7?��H� \ No newline at end of file diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/86/925f3dbe9612b1761f4b81c7cca537042d1ba5 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/86/925f3dbe9612b1761f4b81c7cca537042d1ba5 deleted file mode 100644 index 5b6a609468..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/86/925f3dbe9612b1761f4b81c7cca537042d1ba5 +++ /dev/null @@ -1,3 +0,0 @@ -x��� -!E{�+�=Xw4"z�3Tƒ�������� ι�����itfH��8�E��'N��K��l�� -�x��Q�ho���½�%s��?%���&7�Փ�"�Y��j�y:�O]=�2J���/ޣ=� \ No newline at end of file diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/88/3d2a2dd9612eb6082788a4de6526ddb3ad3953 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/88/3d2a2dd9612eb6082788a4de6526ddb3ad3953 deleted file mode 100644 index dbe327cf7b..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/88/3d2a2dd9612eb6082788a4de6526ddb3ad3953 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/8d/b58aea340c97a28a918d030a1214f2c841fa99 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/8d/b58aea340c97a28a918d030a1214f2c841fa99 deleted file mode 100644 index 30898e91bc..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/8d/b58aea340c97a28a918d030a1214f2c841fa99 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/8e/cdfe1113dc937955b37cc25fa1d3b16b8c3f58 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/8e/cdfe1113dc937955b37cc25fa1d3b16b8c3f58 deleted file mode 100644 index 405a2edc7d..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/8e/cdfe1113dc937955b37cc25fa1d3b16b8c3f58 +++ /dev/null @@ -1,3 +0,0 @@ -x��M -1 @a�=E���� �x�4�:8�J���� n|𸷶L�N��B��͊1:�D��N��(���R�\ԋ�l3;�QsBʾ -b���ızg3��}>��m_�ٟ��Y���OUF����hYO����>����Q�կ�&���U��������JG \ No newline at end of file diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/92/50cef74fbc604cafdf88e360adb48227b0d8f8 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/92/50cef74fbc604cafdf88e360adb48227b0d8f8 deleted file mode 100644 index 3956c71ebc..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/92/50cef74fbc604cafdf88e360adb48227b0d8f8 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/94/4cd8dc1e727cc4c1a29c96c2722f657fb04556 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/94/4cd8dc1e727cc4c1a29c96c2722f657fb04556 deleted file mode 100644 index 7ba5e51a9e..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/94/4cd8dc1e727cc4c1a29c96c2722f657fb04556 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/99/8c3a97690c79a84b1a5e2caeb27c6f43289ac9 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/99/8c3a97690c79a84b1a5e2caeb27c6f43289ac9 deleted file mode 100644 index 7ffa5f17a4..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/99/8c3a97690c79a84b1a5e2caeb27c6f43289ac9 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/9e/ee301edb8541c422189d3f840465979be7243e b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/9e/ee301edb8541c422189d3f840465979be7243e deleted file mode 100644 index 78d683624c..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/9e/ee301edb8541c422189d3f840465979be7243e +++ /dev/null @@ -1,2 +0,0 @@ -x��A�� s��#E�0� E�~e ͮcG����\KUR壵uX�p�*a�BE�y�A�^2gY�$QA�ż�c6�੸DR�S��^ -t:�<�X���������m�xb�w4�5�*z���o�u��=��QBb�d���I�Ɂ/sӱA�0���I1 \ No newline at end of file diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/a3/c1b97ba896a9e7b4ee7de7804b6f4c7041b28a b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/a3/c1b97ba896a9e7b4ee7de7804b6f4c7041b28a deleted file mode 100644 index 6d148d692f..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/a3/c1b97ba896a9e7b4ee7de7804b6f4c7041b28a and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/ac/9ea033d52a0e82aff1c78bd662c7141f5af732 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/ac/9ea033d52a0e82aff1c78bd662c7141f5af732 deleted file mode 100644 index 8f6ef734aa..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/ac/9ea033d52a0e82aff1c78bd662c7141f5af732 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/b4/e5be957c747072a30feedd41b99ed0aba20b64 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/b4/e5be957c747072a30feedd41b99ed0aba20b64 deleted file mode 100644 index 9478f0ecce..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/b4/e5be957c747072a30feedd41b99ed0aba20b64 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/b7/a5d846edd756380a14ea053b1a375062f4c925 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/b7/a5d846edd756380a14ea053b1a375062f4c925 deleted file mode 100644 index 4fffa0795f..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/b7/a5d846edd756380a14ea053b1a375062f4c925 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/bc/4da8f75a25b119f97957366961b802a10b3e72 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/bc/4da8f75a25b119f97957366961b802a10b3e72 deleted file mode 100644 index 92f4a7e3bf..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/bc/4da8f75a25b119f97957366961b802a10b3e72 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/c2/b035650f84155c294f10e157e99fd510ab900f b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/c2/b035650f84155c294f10e157e99fd510ab900f deleted file mode 100644 index 483c1334e2..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/c2/b035650f84155c294f10e157e99fd510ab900f and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/c7/4b4b9b74b6b50a84eceff6c64e13f2424e256f b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/c7/4b4b9b74b6b50a84eceff6c64e13f2424e256f deleted file mode 100644 index b949f51972..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/c7/4b4b9b74b6b50a84eceff6c64e13f2424e256f +++ /dev/null @@ -1 +0,0 @@ -x+)JMU06a040031Qrut�ue�<�9CJYNL�Yoݢ�EŞ��� � \ No newline at end of file diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/c8/630d186449f79df6fd2bdea5e0ec7e02af5834 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/c8/630d186449f79df6fd2bdea5e0ec7e02af5834 deleted file mode 100644 index e7d4b72a9c..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/c8/630d186449f79df6fd2bdea5e0ec7e02af5834 +++ /dev/null @@ -1,2 +0,0 @@ -x��[ -�0Fa���� e��6 �V&��Vbܿ]��>8eom��p��f�}�T�3�ˮ����� If���ұ -s1�c��A1; ���+���6���x�]o�u� ����/e��M>�G�e��ޮ����3�>�!RG=&��c�|�~0HX \ No newline at end of file diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/c9/5ddea3eac3e5518506e502fe492d4301f50cee b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/c9/5ddea3eac3e5518506e502fe492d4301f50cee deleted file mode 100644 index 7f3ce6abb8..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/c9/5ddea3eac3e5518506e502fe492d4301f50cee and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/cf/6979398d4c402645325f7e50228c48ca578614 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/cf/6979398d4c402645325f7e50228c48ca578614 deleted file mode 100644 index 5558a1385c..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/cf/6979398d4c402645325f7e50228c48ca578614 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/cf/aaa5eeee94ad7c9e2f23dc4abdf4d8345615fd b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/cf/aaa5eeee94ad7c9e2f23dc4abdf4d8345615fd deleted file mode 100644 index d05aed1f9b..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/cf/aaa5eeee94ad7c9e2f23dc4abdf4d8345615fd and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/cf/b35e76f168b2cd5f22da0ccf86cf56983ecc42 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/cf/b35e76f168b2cd5f22da0ccf86cf56983ecc42 deleted file mode 100644 index cf543e2c63..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/cf/b35e76f168b2cd5f22da0ccf86cf56983ecc42 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/d9/96da6d561673bfbd423c6ca62ed91317002be3 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/d9/96da6d561673bfbd423c6ca62ed91317002be3 deleted file mode 100644 index 6f6ef38980..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/d9/96da6d561673bfbd423c6ca62ed91317002be3 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/da/ba9435d2e110577ac88078b66ec8f455a7f4cb b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/da/ba9435d2e110577ac88078b66ec8f455a7f4cb deleted file mode 100644 index 30fe05ce34..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/da/ba9435d2e110577ac88078b66ec8f455a7f4cb and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/dd/777d69cb00943bc91258469ec336a008187867 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/dd/777d69cb00943bc91258469ec336a008187867 deleted file mode 100644 index 08d01e66ec..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/dd/777d69cb00943bc91258469ec336a008187867 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/de/0f2c2ba7b47a08461e40093347baa3622bcf18 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/de/0f2c2ba7b47a08461e40093347baa3622bcf18 deleted file mode 100644 index 84327762b1..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/de/0f2c2ba7b47a08461e40093347baa3622bcf18 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/e0/dbe2b9e664f1dcbccffae5b54be943f23aa5d0 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/e0/dbe2b9e664f1dcbccffae5b54be943f23aa5d0 deleted file mode 100644 index 20c15e10b8..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/e0/dbe2b9e664f1dcbccffae5b54be943f23aa5d0 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/e8/844b2adba55ca169e97a2ed2ec7f14d0a84152 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/e8/844b2adba55ca169e97a2ed2ec7f14d0a84152 deleted file mode 100644 index 1b29e01d37..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/e8/844b2adba55ca169e97a2ed2ec7f14d0a84152 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/f0/1ff126101b1b053c612b82ef2182c69fe1b3a9 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/f0/1ff126101b1b053c612b82ef2182c69fe1b3a9 deleted file mode 100644 index 6a337629f5..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/f0/1ff126101b1b053c612b82ef2182c69fe1b3a9 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/f0/302084e505c45ad3b4b1a85fbd3d59a7d823a5 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/f0/302084e505c45ad3b4b1a85fbd3d59a7d823a5 deleted file mode 100644 index 5a18d7478a..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/f0/302084e505c45ad3b4b1a85fbd3d59a7d823a5 and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/f4/4e5fa97149732d9dba9b6cb7f3ed9ddffeb38d b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/f4/4e5fa97149732d9dba9b6cb7f3ed9ddffeb38d deleted file mode 100644 index 519bf0b092..0000000000 Binary files a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/f4/4e5fa97149732d9dba9b6cb7f3ed9ddffeb38d and /dev/null differ diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/f6/98199306b8e736cf63c393bbc1016da580ca57 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/f6/98199306b8e736cf63c393bbc1016da580ca57 deleted file mode 100644 index 27c8e8b361..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/objects/f6/98199306b8e736cf63c393bbc1016da580ca57 +++ /dev/null @@ -1,2 +0,0 @@ -x��M -� @�=��Bǟ(�ҫ�8��1kz�� �>��Q�u�]Fg�����g=���ؒ'#ژ4)7S����c�mH�!�l�$唏*$Č����|�������v��ho��+���½���Y�N��]*� �h��8�99�O.2ym���H \ No newline at end of file diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/heads/develop b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/heads/develop deleted file mode 100644 index 30c43a255e..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/heads/develop +++ /dev/null @@ -1 +0,0 @@ -469f85198036004654a83045a70e9893797180b1 diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/heads/feature/one b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/heads/feature/one deleted file mode 100644 index e60e8db10f..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/heads/feature/one +++ /dev/null @@ -1 +0,0 @@ -368b815d3ae7bf6d301ff760a8d674bb736d6905 diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/heads/feature/two b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/heads/feature/two deleted file mode 100644 index 180356bcd8..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/heads/feature/two +++ /dev/null @@ -1 +0,0 @@ -8ecdfe1113dc937955b37cc25fa1d3b16b8c3f58 diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/heads/hotfix/0.2.0 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/heads/hotfix/0.2.0 deleted file mode 100644 index 9703b127cb..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/heads/hotfix/0.2.0 +++ /dev/null @@ -1 +0,0 @@ -3c2b9efe0e90aa945bdb27d02e4bc00574e019b8 diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/heads/master b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/heads/master deleted file mode 100644 index 3a5a37f952..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/heads/master +++ /dev/null @@ -1 +0,0 @@ -ac9ea033d52a0e82aff1c78bd662c7141f5af732 diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/tags/0.1.0 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/tags/0.1.0 deleted file mode 100644 index 5dcfd6706a..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/tags/0.1.0 +++ /dev/null @@ -1 +0,0 @@ -3c63a1eebb6d6c24c465f672e37f048b61022221 diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/tags/0.2.0 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/tags/0.2.0 deleted file mode 100644 index 1c4a986585..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/tags/0.2.0 +++ /dev/null @@ -1 +0,0 @@ -d996da6d561673bfbd423c6ca62ed91317002be3 diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/tags/1.0.0 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/tags/1.0.0 deleted file mode 100644 index b22ab6c267..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/tags/1.0.0 +++ /dev/null @@ -1 +0,0 @@ -944cd8dc1e727cc4c1a29c96c2722f657fb04556 diff --git a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/tags/1.0.1 b/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/tags/1.0.1 deleted file mode 100644 index fff1da68e7..0000000000 --- a/src/GitVersionTask.Tests/Resources/asbm_wd/gitted/refs/tags/1.0.1 +++ /dev/null @@ -1 +0,0 @@ -44aa7dac0deeb5cb94a3882f1cb47acc3024f006 diff --git a/src/GitVersionTask.Tests/packages.config b/src/GitVersionTask.Tests/packages.config index 5372cbeee9..5564efa364 100644 --- a/src/GitVersionTask.Tests/packages.config +++ b/src/GitVersionTask.Tests/packages.config @@ -7,11 +7,12 @@ - + + diff --git a/src/GitVersionTask/GitVersionTask.csproj b/src/GitVersionTask/GitVersionTask.csproj index 2e1ac88e86..e4dc8d9de0 100644 --- a/src/GitVersionTask/GitVersionTask.csproj +++ b/src/GitVersionTask/GitVersionTask.csproj @@ -24,6 +24,7 @@ 4 false 1591 + 5 pdbonly diff --git a/src/GitVersionVsoTask/icon.png b/src/GitVersionVsoTask/icon.png new file mode 100644 index 0000000000..fe52c661cb Binary files /dev/null and b/src/GitVersionVsoTask/icon.png differ diff --git a/src/GitVersionVsoTask/task.json b/src/GitVersionVsoTask/task.json new file mode 100644 index 0000000000..66624ca78c --- /dev/null +++ b/src/GitVersionVsoTask/task.json @@ -0,0 +1,54 @@ +{ + "id": "e5983830-3f75-11e5-82ed-81492570a08e", + "name": "GitVersion", + "friendlyName": "GitVersion Task", + "description": "Easy Semantic Versioning (http://semver.org) for projects using Git", + "author": "GitTools and Contributors", + "helpMarkDown": "See the [documentation](http://gitversion.readthedocs.org/en/latest/) for help", + "category": "Build", + "visibility": [ + "Build", + "Release" + ], + "demands": [], + "version": { + "Major": "0", + "Minor": "0", + "Patch": "0" + }, + "minimumAgentVersion": "1.83.0", + "groups": [ + { + "name": "additional", + "displayName": "Additional Options", + "isExpanded": false + } + ], + "instanceNameFormat": "GitVersion", + "inputs": [ + { + "name": "updateAssemblyInfo", + "type": "boolean", + "label": "Update AssemblyInfo's", + "defaultValue": "false", + "required": false, + "helpMarkDown": "Whether to update versions in the AssemblyInfo files" + }, + { + "name": "additionalArguments", + "type": "string", + "label": "Additional GitVersion.exe arguments", + "defaultValue": "", + "required": false, + "helpMarkDown": "Additional arguments to send to GitVersion.exe", + "groupName": "additional" + } + ], + "execution": { + "Process": { + "target": "$(currentDirectory)\\GitVersion.exe", + "argumentFormat": "$(Build.SourcesDirectory) /output buildserver /updateAssemblyInfo $(updateAssemblyInfo) /nofetch $(additionalArguments)", + "workingDirectory": "$(currentDirectory)" + } + } +} \ No newline at end of file