At some point I added a large file into a git repository.  
It now exists on multiple branches, possibly with some 
changes to it.  I'd like to remove it from git, but leave its 
current form (say the one on the master branch) on the 
file system.

I tried (on a dummy git archive)

git filter-branch --index-filter 'git rm --cached --ignore-unmatch bigfile' 
master branch1 branch2

That, however, does not leave a copy of bigfile on the file system.
It isn't clear to me why not, though the description of the --tree-filter
option to filter-branch (I'm using the --index-filter option, but is is 
"similar") states:
" (new files are auto-added, disappeared files are auto-removed ... )".  

Is there a direct way to do what I want, with git?  I've found similar 
none of the responses point out that the above command actually deletes 
the file from the file system.

You received this message because you are subscribed to the Google Groups "Git 
for human beings" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
For more options, visit

Reply via email to