Ok, I've cleaned things up with git-subtree so the changes I had to the test infrastructure are gone. No changes to upstream are needed to support git-subtree in contrib/ now.
As usual, the branches are here:
git://sources.obbligato.org/git/git.git
gitweb here: http://sources.obbligato.org/?p=git.git;a=summary
There are three branches. master is the usual. "subtree-latest" is my version of git-subtree cleaned up for upstreaming into contrib/. This is the pure git-subtree history, ready to be subtree merged. "subtree-integrated" is a version of upstream git.git with subtree-latest merged as a subtree (done via git-subtree!).
I assume it will be easier to have Junio or another integrator do the subtree merge from subtree-latest in his or her workarea but I provide subtree-integrated so everyone can easily check out what it will look like.
Let me know of anything else you need.
Thanks!
-Dave