Load project log using raw git objects
author Chris Han
committer Chris Han
commit a332f2edbdc62cc09ded908de9fe452ed5057a15
tree 2fcab3bdf65b9a6b9dc746ef49faae5381961f4c
parent c2a873bb3ce83b7dcce2035e2602795379fba8b5
Load project log using raw git objects

Based on the log walking code from glip

Walking the log in raw php is a bit of a mixed bag as far as
performance. If you're walking commits close to the tip of the head
performance is good, because you save the shell call to git-rev-list and
performance wise it's light to load the parents of the first 50 commits.
However, in raw PHP we have to do the walking ourselves, which means we
can't --skip the first 100 or so commits - so when listing commits
several pages away from the head, we have to walk all the way from the
tip down to that page, and then discard the more recent commits we don't
care about.
So the loading time increases for each log page further away from the
tip (earlier commits).