I have some files in my repository that should be ignored, i added them to the .gitignore but, of course, they are not removed from my repository.
So my question is, is there a magic command or script using filter-branch that can rewrite my history and remove all these files easily? Or simply a command that will create a commit that will remove them ?
You can remove them from the repository manually:
Or, if you have a lot of files:
But this doesn’t seem to work in Git Bash on Windows. It produces an error message. The following works better:
In PowerShell on Windows this works even better (handles spaces in path and filenames):
Regarding rewriting the whole history without these files, I highly doubt there’s an automatic way to do it.
And we all know that rewriting the history is bad, don’t we? 🙂