Я хочу удалить все файлы, которые не являются ни «foo», ни «bar» в истории репозитория git. Учитывая, что rm -rf !(foo|bar)
работает для удаления файлов в текущем каталоге, которые не являются ни «foo», ни «bar». Мне пришла в голову следующая идея:
$ git filter-branch --tree-filter 'rm -rf !(foo|bar)' --prune-empty HEAD
Однако это вызвало следующую ошибку, которую я действительно не понимаю, почему она не работает.
Rewrite 75c1ec1ef083338ca2e88db9cc6107c1630d91e9 (1/871)~/libexec/git-core/git-filter-branch: 1: eval: Syntax error: "(" unexpected
rm
в этом контексте. - person Makoto   schedule 14.07.2014