git filter-branch の subdirectory-filter を使うのがいいみたいです。履歴も残るのが素晴しいです。 man git-filter-branch から引用すると Only look at the history which touches the given subdirectory. The result will contain that directory (and only that) as its project root. Implies the section called “Remap to ancestor”.