- 
                Notifications
    You must be signed in to change notification settings 
- Fork 913
git log
        nulltoken edited this page May 26, 2011 
        ·
        14 revisions
      
    $ git log -15
using (var repo = new Repository("path/to/your/repo"))
{
    var RFC2822Format = "ddd dd MMM HH:mm:ss yyyy K";
    foreach (Commit c in repo.Commits.Take(15))
    {
        Console.WriteLine(string.Format("commit {0}", c.Id));
                   
        if (c.Parents.Count() > 1)
        {
            Console.WriteLine("Merge: {0}", 
                string.Join(" ", c.Parents.Select(p => p.Id.Sha.Substring(0, 7)).ToArray()));
        }
        Console.WriteLine(string.Format("Author: {0} <{1}>", c.Author.Name, c.Author.Email));
        Console.WriteLine("Date:   {0}", c.Author.When.ToString(RFC2822Format, CultureInfo.InvariantCulture));
        Console.WriteLine();
        Console.WriteLine(c.Message);
        Console.WriteLine();
    }
}$ git log --topo-order --reverse
using (var repo = new Repository("path/to/your/repo"))
{
    var filter = new Filter { SortBy = GitSortOptions.Topological | GitSortOptions.Reverse };
    foreach (Commit c in repo.Commits.QueryBy(filter))
    {
        Console.WriteLine(c.Id);   // Of course the output can be prettified ;-)
    }
}$ git log master..development
using (var repo = new Repository("path/to/your/repo"))
{
    var filter = new Filter { Since = repo.Branches["master"], Until = repo.Branches["development"] };
    foreach (Commit c in repo.Commits.QueryBy(filter))
    {
        Console.WriteLine(c.Id);   // Of course the output can be prettified ;-)
    }
}