Johannes Schindelin wrote:
Of course, it would be even more so if the target branch name was
"filtered", overrideable by "--target <name>".
My plan for this is:
1. run the rev-list args ("$@") through rev-parse
2. pick only the positive ones (/^[a-z0-9]{40}$/)
3. filter show-ref against the result of 2.
4. foreach ref in the result of 3. install a refs/rewritten/$ref
with the mapped id if and only if the mapped id is different
from the original id of $ref.
Then you can, for example, 'git filter-branch --all' to rewrite all
branches.
-- Hannes