Ejemplo n.º 1
0
        public async Task <List <Commit> > GetCommitsFromBranch(string path, string branchName)
        {
            var result  = new List <Commit>();
            var commit  = new Commit();
            var commits = await _gitService.GetAllCommitsForBranch(path, branchName).ConfigureAwait(false);

            var listGitIds = await GitParser.ParseCommitsAsync(commits.Output, ParametrParse.commit).ConfigureAwait(false);

            var listAuthors = await GitParser.ParseCommitsAsync(commits.Output, ParametrParse.Author)
                              .ConfigureAwait(false);

            var listDates = await GitParser.ParseDateFromCommitsAsync(commits.Output).ConfigureAwait(false);

            var listMessages = await GitParser.ParseMessageFromCommitsAsync(commits.Output).ConfigureAwait(false);

            for (int i = 0; i < listAuthors.Count; i++)
            {
                commit.Id          = Guid.NewGuid();
                commit.GitCommitId = listGitIds[i];
                commit.UserEmail   = listAuthors[i];
                commit.Time        = listDates[i].Ticks;
                commit.Message     = listMessages[i];
                var temp = commit;
                result.Add(temp);
                commit = new Commit();
            }
            return(result);
        }