JS> Most likely, your sed has problems with a sed script in function
JS> get_author_ident_from_commit. I tested it like this:

JS> $ sh -c '. $(git --exec-path)/git-sh-setup;
JS>                 get_author_ident_from_commit HEAD'
JS> GIT_AUTHOR_NAME='Johannes Sixt'
JS> GIT_AUTHOR_EMAIL='j...@kdbg.org'
JS> GIT_AUTHOR_DATE='@1350025129 +0200'

JS> -- Hannes

Both systems have GNU sed 4.2.1 installed. I wrote a wrapper script wor sed.
It's output attached.
The difference is letter case in sed input data:
Solaris:
  /^AUTHOR /
Windows:
  /^author /

-- 
$ git filter-branch -f --tree-filter "env | grep GIT_; true" HEAD~1..HEAD

SED BEGIN
SED ARGUMENTS: -e s/-/ /
SED STDIN BEGIN
git-filter-branch

SED STDIN END

SED OUTPUT BEGIN
git filter-branch

SED OUTPUT END
SED EXIT CODE: 0
SED END

SED BEGIN
SED ARGUMENTS: -e /^^/d 
/cygdrive/c/sicap/rap/gitcvs/RAP27/.git-rewrite/raw-heads
SED INPUT FILE BEGIN: /cygdrive/c/sicap/rap/gitcvs/RAP27/.git-rewrite/raw-heads
refs/heads/master

SED INPUT FILE   END: /cygdrive/c/sicap/rap/gitcvs/RAP27/.git-rewrite/raw-heads

SED OUTPUT BEGIN
refs/heads/master

SED OUTPUT END
SED EXIT CODE: 0
SED END
Rewrite acd1d2bb1984c96630d5070497590307151c4682 (1/1)
SED BEGIN
SED ARGUMENTS: -ne
                /^author /{
                        s/'/'\\''/g
                        h
                        s/^author \([^<]*\) <[^>]*> .*$/\1/
                        s/'/'\''/g
                        s/.*/GIT_AUTHOR_NAME='&'; export GIT_AUTHOR_NAME/p

                        g
                        s/^author [^<]* <\([^>]*\)> .*$/\1/
                        s/'/'\''/g
                        s/.*/GIT_AUTHOR_EMAIL='&'; export GIT_AUTHOR_EMAIL/p

                        g
                        s/^author [^<]* <[^>]*> \(.*\)$/\1/
                        s/'/'\''/g
                        s/.*/GIT_AUTHOR_DATE='&'; export GIT_AUTHOR_DATE/p

                        q
                }

SED STDIN BEGIN
tree 969f563d319049bb6dabc12054d67671499a6f55
parent c4734950e37c09ca7d3e3088f6f31d866dbb5077
author Ilya Basin <basini...@gmail.com> 1350401059 +0400
committer Ilya Basin <basini...@gmail.com> 1350405585 +0400

temp

SED STDIN END

SED OUTPUT BEGIN
GIT_AUTHOR_NAME='Ilya Basin'; export GIT_AUTHOR_NAME
GIT_AUTHOR_EMAIL='basini...@gmail.com'; export GIT_AUTHOR_EMAIL
GIT_AUTHOR_DATE='1350401059 +0400'; export GIT_AUTHOR_DATE

SED OUTPUT END
SED EXIT CODE: 0
SED END

SED BEGIN
SED ARGUMENTS: -ne
                /^committer /{
                        s/'/'\\''/g
                        h
                        s/^committer \([^<]*\) <[^>]*> .*$/\1/
                        s/'/'\''/g
                        s/.*/GIT_COMMITTER_NAME='&'; export GIT_COMMITTER_NAME/p

                        g
                        s/^committer [^<]* <\([^>]*\)> .*$/\1/
                        s/'/'\''/g
                        s/.*/GIT_COMMITTER_EMAIL='&'; export 
GIT_COMMITTER_EMAIL/p

                        g
                        s/^committer [^<]* <[^>]*> \(.*\)$/\1/
                        s/'/'\''/g
                        s/.*/GIT_COMMITTER_DATE='&'; export GIT_COMMITTER_DATE/p

                        q
                }

SED STDIN BEGIN
tree 969f563d319049bb6dabc12054d67671499a6f55
parent c4734950e37c09ca7d3e3088f6f31d866dbb5077
author Ilya Basin <basini...@gmail.com> 1350401059 +0400
committer Ilya Basin <basini...@gmail.com> 1350405585 +0400

temp

SED STDIN END

SED OUTPUT BEGIN
GIT_COMMITTER_NAME='Ilya Basin'; export GIT_COMMITTER_NAME
GIT_COMMITTER_EMAIL='basini...@gmail.com'; export GIT_COMMITTER_EMAIL
GIT_COMMITTER_DATE='1350405585 +0400'; export GIT_COMMITTER_DATE

SED OUTPUT END
SED EXIT CODE: 0
SED END
GIT_DIR=/cygdrive/c/sicap/rap/gitcvs/RAP27/.git
GIT_AUTHOR_DATE=1350401059 +0400
GIT_INDEX_FILE=/cygdrive/c/sicap/rap/gitcvs/RAP27/.git-rewrite/t/../index
GIT_WORK_TREE=.
GIT_AUTHOR_NAME=Ilya Basin
GIT_COMMITTER_NAME=Ilya Basin
GIT_COMMIT=acd1d2bb1984c96630d5070497590307151c4682
GIT_COMMITTER_EMAIL=basini...@gmail.com
GIT_COMMITTER_DATE=1350405585 +0400
GIT_AUTHOR_EMAIL=basini...@gmail.com

SED BEGIN
SED ARGUMENTS: -e 1,/^$/d
SED STDIN BEGIN
tree 969f563d319049bb6dabc12054d67671499a6f55
parent c4734950e37c09ca7d3e3088f6f31d866dbb5077
author Ilya Basin <basini...@gmail.com> 1350401059 +0400
committer Ilya Basin <basini...@gmail.com> 1350405585 +0400

temp

SED STDIN END

SED OUTPUT BEGIN
temp

SED OUTPUT END
SED EXIT CODE: 0
SED END

WARNING: Ref 'refs/heads/master' is unchanged
-bash-3.00$ git filter-branch -f --tree-filter "env | grep GIT_; true" 
HEAD~1..HEAD

SED BEGIN
SED ARGUMENTS: -e s/-/ /
SED STDIN BEGIN
git-filter-branch

SED STDIN END

SED OUTPUT BEGIN
git filter-branch

SED OUTPUT END
SED EXIT CODE: 0
SED END

SED BEGIN
SED ARGUMENTS: -e /^^/d 
/home/tester/.ilya/builds/makepkg.rap_0.1-1_sparc.XXXXXX/src/rap/.git-rewrite/raw-heads
SED INPUT FILE BEGIN: 
/home/tester/.ilya/builds/makepkg.rap_0.1-1_sparc.XXXXXX/src/rap/.git-rewrite/raw-heads
refs/heads/master

SED INPUT FILE   END: 
/home/tester/.ilya/builds/makepkg.rap_0.1-1_sparc.XXXXXX/src/rap/.git-rewrite/raw-heads

SED OUTPUT BEGIN
refs/heads/master

SED OUTPUT END
SED EXIT CODE: 0
SED END
Rewrite acd1d2bb1984c96630d5070497590307151c4682 (1/1)
SED BEGIN
SED ARGUMENTS: -ne
                /^AUTHOR /{
                        s/'/'\\''/g
                        h
                        s/^AUTHOR \([^<]*\) <[^>]*> .*$/\1/
                        s/'/'\''/g
                        s/.*/GIT_AUTHOR_NAME='&'; export GIT_AUTHOR_NAME/p

                        g
                        s/^AUTHOR [^<]* <\([^>]*\)> .*$/\1/
                        s/'/'\''/g
                        s/.*/GIT_AUTHOR_EMAIL='&'; export GIT_AUTHOR_EMAIL/p

                        g
                        s/^AUTHOR [^<]* <[^>]*> \(.*\)$/\1/
                        s/'/'\''/g
                        s/.*/GIT_AUTHOR_DATE='&'; export GIT_AUTHOR_DATE/p

                        q
                }

SED STDIN BEGIN
tree 969f563d319049bb6dabc12054d67671499a6f55
parent c4734950e37c09ca7d3e3088f6f31d866dbb5077
author Ilya Basin <basini...@gmail.com> 1350401059 +0400
committer Ilya Basin <basini...@gmail.com> 1350405585 +0400

temp

SED STDIN END

SED OUTPUT BEGIN

SED OUTPUT END
SED EXIT CODE: 0
SED END

SED BEGIN
SED ARGUMENTS: -ne
                /^COMMITTER /{
                        s/'/'\\''/g
                        h
                        s/^COMMITTER \([^<]*\) <[^>]*> .*$/\1/
                        s/'/'\''/g
                        s/.*/GIT_COMMITTER_NAME='&'; export GIT_COMMITTER_NAME/p

                        g
                        s/^COMMITTER [^<]* <\([^>]*\)> .*$/\1/
                        s/'/'\''/g
                        s/.*/GIT_COMMITTER_EMAIL='&'; export 
GIT_COMMITTER_EMAIL/p

                        g
                        s/^COMMITTER [^<]* <[^>]*> \(.*\)$/\1/
                        s/'/'\''/g
                        s/.*/GIT_COMMITTER_DATE='&'; export GIT_COMMITTER_DATE/p

                        q
                }

SED STDIN BEGIN
tree 969f563d319049bb6dabc12054d67671499a6f55
parent c4734950e37c09ca7d3e3088f6f31d866dbb5077
author Ilya Basin <basini...@gmail.com> 1350401059 +0400
committer Ilya Basin <basini...@gmail.com> 1350405585 +0400

temp

SED STDIN END

SED OUTPUT BEGIN

SED OUTPUT END
SED EXIT CODE: 0
SED END
GIT_DIR=/home/tester/.ilya/builds/makepkg.rap_0.1-1_sparc.XXXXXX/src/rap/.git
GIT_INDEX_FILE=/home/tester/.ilya/builds/makepkg.rap_0.1-1_sparc.XXXXXX/src/rap/.git-rewrite/t/../index
GIT_WORK_TREE=.
GIT_AUTHOR_NAME=
GIT_COMMITTER_NAME=
GIT_COMMIT=acd1d2bb1984c96630d5070497590307151c4682

SED BEGIN
SED ARGUMENTS: -e 1,/^$/d
SED STDIN BEGIN
tree 969f563d319049bb6dabc12054d67671499a6f55
parent c4734950e37c09ca7d3e3088f6f31d866dbb5077
author Ilya Basin <basini...@gmail.com> 1350401059 +0400
committer Ilya Basin <basini...@gmail.com> 1350405585 +0400

temp

SED STDIN END

SED OUTPUT BEGIN
temp

SED OUTPUT END
SED EXIT CODE: 0
SED END
fatal: empty ident  <basini...@gmail.com> not allowed
could not write rewritten commit
-bash-3.00$

Reply via email to