gitlabhq/gitlab_git — pull request #40 by mr-vinn (2014-08-26 14:28:40+00:00)
Title: Use Rugged in Commit, Diff, and Repository.log()

I gave the Commit and Diff objects the ability to wrap either a Rugged object or a Grit object. That allows the `Repository.log()` method to use Rugged instead of Grit and return an array of Rugged commit objects.

### Breaking changes
* __`Gitlab::Git::Commit.parents` returns an array of `Gitlab::Git::Commit` objects instead of Rugged commits__
I did this to be consistent with the existing `diffs` method. You can still get the Rugged parent commits with `raw_commit`.

* __The new `CommitStats` class doesn't implement a `files` method__
The `files` method isn't used internally or by Gitlab CE.

* __`Repository.log` no longer uses the `follow` option__
This option isn't used internally or by Gitlab CE.

* __The `raw_commit` or `raw_diff` object might be a Rugged object, while callers may be expecting a Grit object.__
This seemed acceptable; callers shouldn't expect to access Grit objects if the library is being removed from gitlab_git.