如何使用libgit2sharp获得前后提交的数量?
使用如何使用libgit2sharp获得前后提交的数量?,git,libgit2,libgit2sharp,git-rev-list,Git,Libgit2,Libgit2sharp,Git Rev List,使用git rev list命令可以获得前后提交的数量。我正在尝试使用libgit2sharp库来实现同样的功能,但是该库没有完整的文档,所以我找不到如何使用它 我正在寻找一个使用获取后/前提交编号的示例。请查看HistoryDivergence类。它采用libgit2中的git\u graph\u ahead\u behind函数。完成Jason Haslam给出的答案。。。这是一个如何使用HistoryDivergence获取每个分支前后的提交数的示例: using (var repo =
git rev list
命令可以获得前后提交的数量。我正在尝试使用libgit2sharp
库来实现同样的功能,但是该库没有完整的文档,所以我找不到如何使用它
我正在寻找一个使用获取后/前提交编号的示例。请查看
HistoryDivergence
类。它采用libgit2中的git\u graph\u ahead\u behind
函数。完成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");
}
}
如果您只想在本地分支与其跟踪的分支之间提前/延迟提交,则可以使用
分支.TrackingDetails
属性,该属性在幕后使用Jason Haslam在回答中引用的HistoryDifference
类。构造函数声明为内部,那么如何使用它呢?请参见公认的答案。这可能更为正确。