git-filter-branch, aby usunąć łańcuchy, ale gdzie łańcuchy zawierają $ 'i inne znaki

Próbuję przepisać historię, używając:

git filter-branch --tree-filter 'git ls-files -z "*.php" |xargs -0 perl -p -i -e "s#(PASSWORD1|PASSWORD2|PASSWORD3)#xXxXxXxXxXx#g"' -- --all

jak opisano wten samouczek.

Jednak ciągi haseł, które mam, zawierają wszystkie rodzaje znaków spoza A-Z, np. $ 'i zamiast być ładnymi prostymi ciągami typu „PASSWORD1” w powyższym przykładzie.

Czy ktoś może wyjaśnić, czego potrzebuję ucieczki? Nigdzie nie udało mi się tego znaleźć i walczę z tym od wielu godzin.

questionAnswers(4)

yourAnswerToTheQuestion