Compare commits

...
5 Commits
4 changed files with 44 additions and 36 deletions
+1 -1
View File
@@ -1 +1 @@
1.0.91
1.0.94
+1 -1
View File
@@ -13,7 +13,7 @@
- Путь до репо (Режим Mercurial, Git) - путь до папки, в которую клонируются исходники.
- Jira URL - адрес Jira-сервреа.
- Логин Jira - Логин в Jira (от этого пользователя будем выполнять запросы и вносить время).
- Пароль Jira - шифруется через DPAPI.
- Пароль Jira - шифруется через DPAPI (может быть JSessionID - если длинна = 32 (!)).
- Mercurial Name (Режим Mercurial) - обязателен к указанию для режима Mercurial - имя пользователя Mercurial, от которого проходят коммиты (именно UserName, не E-Mail).
- Округление времени - Для красоты распределения времени тут устанавливается округление. По умолчанию - 15 минут, получим время 1:15, 0:30 итд. Остаток нераспределенного времени будет внесен в самую долгую задачу или же если это невозможно - количество рабочего времени будет увеличено или уменьшено.
- JQL (Режим Jira) - можно задать свой JQL для поиска задач. Возможные замены: %USER% - Логин Jira, %DATE% дата на которую формируем список. Значнеие по умолчанию: status changed by '%USER%' during ("%DATE%","%DATE%")
+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
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.91")]
[assembly: AssemblyFileVersion("1.0.91")]
[assembly: AssemblyInformationalVersion("1.0.91")]
[assembly: AssemblyVersion("1.0.94")]
[assembly: AssemblyFileVersion("1.0.94")]
[assembly: AssemblyInformationalVersion("1.0.94")]
+11 -3
View File
@@ -114,7 +114,7 @@ namespace JiraTimeBot.RepositoryProviders
continue;
}
var regex = new Regex("[a-zA-Z0-9]{1,4}-[0-9]{1,6}");
var regex = new Regex("[a-zA-Z0-9]{1,5}-[0-9]{1,6}");
var branch = ListBranchesContainsCommit(repo, commit.Sha)
.Select(f => f.FriendlyName)
.FirstOrDefault(f => regex.IsMatch(f));
@@ -184,7 +184,7 @@ namespace JiraTimeBot.RepositoryProviders
bool directBranchHasBeenFound = false;
foreach (var branch in repo.Branches)
{
if (branch.Tip.Sha != commitSha)
if (branch.Tip?.Sha != commitSha)
{
continue;
}
@@ -200,7 +200,15 @@ namespace JiraTimeBot.RepositoryProviders
foreach (var branch in repo.Branches)
{
var commits = repo.Commits.QueryBy(new CommitFilter { IncludeReachableFrom = branch }).Where(c => c.Sha == commitSha);
List<Commit> commits = new List<Commit>();
try
{
commits = repo.Commits.QueryBy(new CommitFilter {IncludeReachableFrom = branch}).Where(c => c.Sha == commitSha).ToList();
}
catch (Exception)
{
continue;
}
if (!commits.Any())
{