Junio C Hamano [off-list ref] writes:
* http://thread.gmane.org/gmane.comp.version-control.git/39443
This was the explanation on the way how the initial git-gui
subtree merge was created.
For the record, the very first cross-project merge is:
http://thread.gmane.org/gmane.comp.version-control.git/5126
The procedure to maintain the resulting re-merge of two
histories do not involve subtree merge because "The coolest
merge ever" merges non-overlapping two trees at the same level,
but the principle used to bootstrap the process is the same.
You prepare a tree that is a overlay of the tips of your two
projects, and record that tree in a commit that is a merge
between two parents.