Running filter-branch over a range of commits

前端 未结 8 1337
夕颜
夕颜 2020-12-02 14:26
git filter-branch --env-filter \'
export GIT_AUTHOR_EMAIL=\"foo@example.com\"
export GIT_AUTHOR_NAME=\"foo\"\' -- commita..commitb

Results in

8条回答
  •  我在风中等你
    2020-12-02 14:47

    Use filter-branch's --setup parm and some shell power:

    git filter-branch --setup '
    for id in `git rev-list commitA..commitB`; do
             eval filterfor_$id=rewrite
    done
    rewrite() {
            GIT_AUTHOR_NAME="Frederick. O. Oosball"
            GIT_AUTHOR_EMAIL=foobar@example.org
    }
    ' --env-filter 'eval \$filterfor_$GIT_COMMIT'
    

提交回复
热议问题