如何使用LibGit2Sharp获取当前/活动分支?

时间:2012-10-11 10:18:14

标签: .net git libgit2sharp

因此,使用LibGit2Sharp https://github.com/libgit2/libgit2sharp,您可以像这样走过分支

using (var repo = new Repository(@"path to .git"))
{
    foreach (var branch in repo.Branches)
    {
        Debug.WriteLine(branch.Name);   
    }
}

但是如何获得当前/活动分支?

2 个答案:

答案 0 :(得分:20)

Branch.IsCurrentRepositoryHead应该可以解决问题。

如果您不想遍历分支,我认为Repository.Head也会做同样的事情......

答案 1 :(得分:0)

我认为,最简单的方法是直接从存储库头部获取分支名称,而不是遍历分支并检查每个分支是否是当前的头部:

using (var repo = new Repository(@"path to .git"))
{
    var currentBranchName = repo.Head.FriendlyName;
}

然后您可以通过

获取分支
repo.Branches[currentBranchName]