Использование скрипта Python в качестве фильтра для git filter-branch

Я пытаюсь переименовать некоторых коммиттеров в репозитории git, используя git filter-branch. Я бы очень хотел использовать более сложную логику, но я не совсем понимаю bash. (Рабочий) скрипт, который я сейчас использую, выглядит так:

git filter-branch -f --tag-name-filter cat --env-filter '

cn="$GIT_COMMITTER_NAME"
cm="$GIT_COMMITTER_EMAIL"

if [ $cn = "ew" ]
then
    cn="Eric"
    cm="my.email@provider.com"
fi

export GIT_COMMITTER_NAME="$cn"
export GIT_COMMITTER_EMAIL="$cm"
' -- --all

Можно ли использовать скрипт python в качестве аргумента --env-filter? Если да, то как мне получить доступ к $GIT_COMMITTER_NAMEдля чтения и записи?

Как мне сделать эквивалент этой строки bash в файле python?

5
задан Eric 13 March 2012 в 21:36
поделиться