On Thursday, November 1, 2007 at 13:58:45 (+0100) Mike Hommey writes: >On Thu, Nov 01, 2007 at 06:55:37AM -0600, Bill Lear wrote: >> In my repo, I have sensitive files A, C, and a directory full of >> sensitive stuff I want to remove forever from the git repository. >> >> % ls >> A B C D sensitive_stuff >> >> % git --version >> git version 1.5.3.5 >> >> % git filter-branch --index-filter 'git update-index --remove A' HEAD >> Rewrite 5dd7d5f2d7d3a5f43c242188ac96294628267673 (7/7) >> Ref 'refs/heads/master' was rewritten >> >> These refs were rewritten: >> % ls >> B C D sensitive_stuff >> >> % git status >> # On branch master >> nothing to commit (working directory clean) >> >> Ok, so I guess it has done what I wanted. So, I try to remove the >> next file that has sensitive information in it: >> >> % git filter-branch --index-filter 'git update-index --remove C' HEAD >> Namespace refs/original/ not empty > >Just remove .git/refs/original/ Ok, thanks. But, how do I remove the subdirectory? % rm -rf .git/refs/original % git filter-branch --index-filter 'git update-index --remove sensitive_stuff' HEAD Rewrite 6711f6a50605918326f67ca0c3402eab9a4c8571 (8/8) WARNING: Ref 'refs/heads/master' is unchanged % ls sensitive_stuff E F G % git filter-branch --index-filter 'git update-index --remove sensitive_stuff/*' HEAD Rewrite 6711f6a50605918326f67ca0c3402eab9a4c8571 (8/8) WARNING: Ref 'refs/heads/master' is unchanged % ls sensitive_stuff E F G % cd sensitive_stuff % git filter-branch --index-filter 'git update-index --remove E F G' HEAD fatal: Not a git repository: '.git' You need to run this command from the toplevel of the working tree. Bill - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html