Subject: Re: Bug report : bad filter-branch (OSX only)

From: Jeff King <[email-masked]>
Date: Tue, 28 Apr 2015 01:55:06 -0400

On Sun, Apr 26, 2015 at 11:25:52AM +0200, Olivier ROLAND wrote:

> OSX 10.10.3 git 2.3.6 HFS+ case-sensitive
> 
> How to reproduce :
> Step 1 : git clone https://github.com/begeric/FastParsers.git
> Step 2 : cd FastParsers/
> Step 3 : git filter-branch --env-filter 'if [ 0 = 1 ]; then echo 0; fi' -- --all
> 
> Result on OSX :
> Rewrite 65df7c5ac1ed956252b07b8c911ad7eba0a15c2b (206/206)
> Ref 'refs/heads/experiment' was rewritten
> Ref 'refs/remotes/origin/experiment' was rewritten
> WARNING: Ref 'refs/remotes/origin/experiment' is unchanged
> Ref 'refs/remotes/origin/master' was rewritten
> 
> Result on Debian :
> Rewrite 65df7c5ac1ed956252b07b8c911ad7eba0a15c2b (206/206)
> WARNING: Ref 'refs/heads/experiment' is unchanged
> WARNING: Ref 'refs/remotes/origin/experiment' is unchanged
> WARNING: Ref 'refs/remotes/origin/experiment' is unchanged
> WARNING: Ref 'refs/remotes/origin/master' is unchanged
> 
> Do you have any thoughts on this ?

Weird. Did you build both versions of git from source (that is, there's
no question that the OS X one is a hacked-up Apple git or something)?

Presumably it's some incompatibility in the shells used. What does:

  head -1 "$(git --exec-path)/git-filter-branch"

say about the shell in use on each system? Does running that shell with
"--version" report anything useful?

-Peff