Skip to content

Commit e7a30cc

Browse files
committed
Merge pull request #594 from GitTools/taskVersionCache
fix version cache key in msbuild task
2 parents f60b364 + 305dd58 commit e7a30cc

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

src/GitVersionTask/VersionAndBranchFinder.cs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,17 +27,20 @@ public static VersionVariables GetVersion(string directory, Authentication authe
2727
var gitDir = GitDirFinder.TreeWalkForDotGitDir(directory);
2828
using (var repo = RepositoryLoader.GetRepo(gitDir))
2929
{
30-
var ticks = DirectoryDateFinder.GetLastDirectoryWrite(directory);
31-
var key = string.Format("{0}:{1}:{2}", repo.Head.CanonicalName, repo.Head.Tip.Sha, ticks);
30+
var ticks = DirectoryDateFinder.GetLastDirectoryWrite(gitDir);
31+
var key = string.Format("{0}:{1}:{2}",gitDir, repo.Head.CanonicalName, repo.Head.Tip.Sha);
3232

33+
Logger.WriteInfo("CacheKey: " + key );
3334
CachedVersion result;
3435
if (versionCacheVersions.TryGetValue(key, out result))
3536
{
3637
if (result.Timestamp != ticks)
3738
{
38-
Logger.WriteInfo("Change detected. flushing cache.");
39+
Logger.WriteInfo(string.Format("Change detected. Flushing cache. OldTimeStamp: {0}. NewTimeStamp: {1}", result.Timestamp, ticks));
3940
result.VersionVariables = ExecuteCore.ExecuteGitVersion(fileSystem, null, null, authentication, null, noFetch, directory, null);
41+
result.Timestamp = ticks;
4042
}
43+
Logger.WriteInfo("Returning version from cache");
4144
return result.VersionVariables;
4245
}
4346
Logger.WriteInfo("Version not in cache. Calculating version.");

0 commit comments

Comments
 (0)