Remove all files except a few files, using filter-branch
From: Yi, EungJun <hidden>
Date: 2016-06-15 22:54:46
From: Yi, EungJun <hidden>
Date: 2016-06-15 22:54:46
Hi, all.
I want to remove all files except a few files, in the history of my
git repository.
I tried to do that as follows:
git filter-branch --index-filter "git rm --cached --ignore-unmatch
$(git ls-files | grep -v '^filename$' | tr '\n' ' ')"
But this does not work well if there is a file whose name is not
encoded in us-ascii or includes parenthesis. git-filter-branch is
great to remove some files in my repository, but not good enough to
remove all except only a few.
Does anyone know the better way?