Thanks to visit codestin.com
Credit goes to github.com

Skip to content
KindDragon edited this page Mar 1, 2013 · 2 revisions

git-merge-base

Find two commits common ancestor

Git

$ git merge-base oneCommit secondCommit

LibGit2Sharp

public string GetMergeBase(string a, string b)
{
    using (var repo = new Repository("path/to/your/repo"))
    {
        var aCommit = Repository.Lookup<Commit>(a);
        var bCommit = Repository.Lookup<Commit>(b);
        if (aCommit == null || bCommit == null)
            return null;
        var baseCommit = Repository.Commits.FindCommonAncestor(aCommit, bCommit);
        return baseCommit != null ? baseCommit.Sha : null;
    }
}
Clone this wiki locally