3 git filter-branch
-f --tag-name-filter cat --commit-filter '
5 eval $(git show --format=%B "$GIT_COMMIT" | sed -ne "s|Signed-off-by: \(.*\) <\(.*\)>$|SOB_AUTHOR='"'"'\\1'"'"'; SOB_EMAIL='"'"'\\2'"'"'|p" | head -n1)
7 if [ -n "$SOB_AUTHOR" -a -n "$SOB_EMAIL" -a "$GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL>" != "$SOB_AUTHOR <$SOB_EMAIL>" ]; then
8 echo -e "\nRewrite $GIT_COMMIT: $GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL> => $SOB_AUTHOR <$SOB_EMAIL>" >&2
9 export GIT_AUTHOR_NAME="$SOB_AUTHOR"
10 export GIT_AUTHOR_EMAIL="$SOB_EMAIL"
15 ' -- "${1:-HEAD~1..HEAD}"
17 git for-each-ref
--format="%(refname)" refs
/original
/ |
xargs -r -n 1 git update-ref
-d