how can I remove the unwanted objects from my repo after filter-branch --subdirectory-filter
git
Solution
filter-branch also keeps backup refs in .git/refs/original, which you'll also have to remove before gc'ing
Problem
I'm using ``` git filter-branch --subdirectory-filter dir/name -- --all ``` to build a repo that only has history relating to that dir/name. Before I do the filter, I clone the original repo (which is very much bigger) into a tmp dir. After the filter-branch, the repo looks just how I want it, with one exception: It seems to still contain all the objects from the original repo even though they're not shown in "git log." How can I remove all those unwanted objects completely? I've tried things like: ``` git reflog expire --expire=now --all git gc --aggressive --prune=now ``` It's clear to me that I don't know why they're still there or what it means to remove them, but I'd sure like to. A bit of possibly related information working against me is that I had done a git repack -a on my source repo a while back and it seems to copy that packfile over to the new repo. Seems like I should still be able to do what I want though.