如何获取libgit2sharp后面/前面的提交数量?

时间:2017-10-03 11:37:47

标签: git libgit2 libgit2sharp git-rev-list

可以使用git rev-list命令获取后面/前面的提交数量。我正在尝试使用libgit2sharp库实现相同的功能但是库没有完整记录,所以我无法找到如何。

我正在寻找一个使用libgit2sharp获取后方/前方提交号码的示例。

2 个答案:

答案 0 :(得分:3)

完成Jason Haslam给出的答案......这是一个如何使用HistoryDivergence来获取每个分支前后提交数量的示例:

using (var repo = new Repository("/path/to/repo"))
{
     foreach (Branch b in repo.Branches)
     {
               // if branch does not have a remote b.TrackingDetails.AheadBy and b.TrackingDetails.BehindBy will be both null
               var commitsAhead = b.TrackingDetails.AheadBy;
               var commitsBehind = b.TrackingDetails.BehindBy;
               Console.WriteLine($"Branch {b.FriendlyName} is {commitsAhead} ahead and {commitsBehind} behind");
      }
}

答案 1 :(得分:2)

查看HistoryDivergence课程。它适应了libgit2中的git_graph_ahead_behind函数。