bitcoin/bitcoin — pull request #2616 by vinniefalco (2013-05-04 02:11:54+00:00)
Title: Leveldb as subtree

I've recreated a branch representing the original LevelDB from which Bitcoin based its copy (it was version 1.7.0 from October 2012), and reapplied the commits from Bitcoin using cherry-pick. It stands in its own repository now so that anyone can use LevelDB with the fixes that Bitcoin applies. It has a reconstituted commit log so that it is a "true" fork from the original Google repository, and that regular Git commands will work.

This pull request removes the detached leveldb sources from the Bitcoin repository and adds them back using "git-subtree", which retains the commit log for the entire LevelDB branch from which Bitcoin started its fork. Using this method it will be possible to both submit Bitcoin's LevelDB changes back to the upstream (which resides on Google code) and cherry-pick or merge newer branches from LevelDB back into the Bitcoin code base.

All of this was done using the 'git-subtree' command (instead of git-submodule which I hate).