add hard-mode: use filter-branch instead
fix bug for boundary commit like '^123...'
redirect grep's output to null