Estimated read time: 1 minutes
git filter-branch is a new command in git-1.5.3 and today i met a situation where it was really useful. here is the scenario:
i have a 'vmexam' (like soxexam, "vmiklos' examples") repo, random small code chunks, every commit touches only a given subdir. after some time some projects need an own repo and i do versioned releases. this was the case with pyrssi, too
so i wanted to have a new repo with only the pyrssi-related commits and without anything else. this is exactly the case git filter-branch's subdirectory filter is for:
git filter-branch --subdirectory-filter python/cgi/pyrssi HEAD
then in the old repo i just rm -rf'd the code and i had it in the root dir of the new repo. yay! :)