Compare commits

..
3 Commits
4 changed files with 52 additions and 37 deletions
+1 -1
View File
@@ -1 +1 @@
1.0.73 1.0.76
+19 -5
View File
@@ -2,13 +2,11 @@
using System.Collections.Generic; using System.Collections.Generic;
using System.IO; using System.IO;
using System.Linq; using System.Linq;
using System.Text;
using System.Threading; using System.Threading;
using JiraTimeBot.Configuration; using JiraTimeBot.Configuration;
using JiraTimeBot.Mercurial.Modifiers; using JiraTimeBot.Mercurial.Modifiers;
using JiraTimeBot.TaskTime.Objects; using JiraTimeBot.TaskTime.Objects;
using LibGit2Sharp; using LibGit2Sharp;
using LibGit2Sharp.Handlers;
namespace JiraTimeBot.Mercurial namespace JiraTimeBot.Mercurial
{ {
@@ -73,15 +71,31 @@ namespace JiraTimeBot.Mercurial
_log?.Trace($" - Не получается сделать pull для репозитория: {directoryInfo.Name} - {ex.Message}"); _log?.Trace($" - Не получается сделать pull для репозитория: {directoryInfo.Name} - {ex.Message}");
} }
} }
var filter = new CommitFilter { SortBy = CommitSortStrategies.Time };
foreach (Commit commit in repo.Commits.QueryBy(filter).Take(200)) var allCommits = new List<Commit>();
var reflog = repo.Refs.Log(repo.Refs.Head);
foreach (var reflogItem in reflog)
{
if (reflogItem.Committer.When.Date != date.Value.Date || reflogItem.Committer.Email != settings.MercurialAuthorEmail)
{
continue;
}
var commit = repo.Lookup<LibGit2Sharp.Commit>(reflogItem.To.Sha);
if (commit != null && allCommits.All(f => f.Sha != commit.Sha))
{
allCommits.Add(commit);
}
}
foreach (Commit commit in allCommits)
{ {
if (cancellationToken.IsCancellationRequested) if (cancellationToken.IsCancellationRequested)
{ {
return new List<TaskTimeItem>(); return new List<TaskTimeItem>();
} }
if (commit.Author.When.DateTime.Date != date || commit.Author.Email != settings.MercurialAuthorEmail) if (commit.Author.When.DateTime.Date != date.Value.Date || commit.Author.Email != settings.MercurialAuthorEmail)
{ {
continue; continue;
} }
@@ -19,6 +19,7 @@ namespace JiraTimeBot.Mercurial.Modifiers
//Пропускаем Close и Merge коммиты //Пропускаем Close и Merge коммиты
if (commitMessage.StartsWith($"Close {branch}", StringComparison.InvariantCultureIgnoreCase) || if (commitMessage.StartsWith($"Close {branch}", StringComparison.InvariantCultureIgnoreCase) ||
commitMessage.StartsWith($"Merge with", StringComparison.InvariantCultureIgnoreCase) || commitMessage.StartsWith($"Merge with", StringComparison.InvariantCultureIgnoreCase) ||
commitMessage.StartsWith($"Merged master into", StringComparison.InvariantCultureIgnoreCase) ||
commitMessage.StartsWith($"Merge branch", StringComparison.InvariantCultureIgnoreCase)) commitMessage.StartsWith($"Merge branch", StringComparison.InvariantCultureIgnoreCase))
{ {
return true; return true;
+3 -3
View File
@@ -26,6 +26,6 @@ using System.Runtime.InteropServices;
// //
// You can specify all the values or you can default the Build and Revision Numbers // You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below: // by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.73")] [assembly: AssemblyVersion("1.0.76")]
[assembly: AssemblyFileVersion("1.0.73")] [assembly: AssemblyFileVersion("1.0.76")]
[assembly: AssemblyInformationalVersion("1.0.73")] [assembly: AssemblyInformationalVersion("1.0.76")]