patch to improve performance when importing large git projects
Redmine exhausted all the memory available on my linode when I tried to import the linux-2.6 git. The problem lies in the import using the "revisions(..)" interface of AbstractAdapter to build an array of all the revisions the project before inserting the changesets into the database. This is a serious problem with the kernel's 90K+ revisions. This patch creates a new git specific method, rev_revisions, that iterates the changes in reverse order so that they can be immediately inserted. These changes affect only git users.
I think a better, long term solution, would be to change revisions in AbstractAdapter to support being called with a block and a :reverse option. I'd be happy to take this on if anyone official blesses the effort.