private VersionVariables ExecuteInternal(string targetBranch, string commitId, Config overrideConfig) { var configuration = configProvider.Provide(overrideConfig: overrideConfig); return(gitPreparer.WithRepository(repo => { var gitVersionContext = new GitVersionContext(repo, log, targetBranch, configuration, commitId: commitId); var semanticVersion = gitVersionFinder.FindVersion(gitVersionContext); return variableProvider.GetVariablesFor(semanticVersion, gitVersionContext.Configuration, gitVersionContext.IsCurrentCommitTagged); })); }
private static string GetRepositorySnapshotHash(IGitPreparer gitPreparer) { var repositorySnapshot = gitPreparer.WithRepository(repo => { var head = repo.Head; if (head.Tip == null) { return(head.CanonicalName); } var hash = string.Join(":", head.CanonicalName, head.Tip.Sha); return(hash); }); return(GetHash(repositorySnapshot)); }