Junio C Hamano <gitster@xxxxxxxxx> wrote Tue, Jun 05, 2007: > Jonas Fonseca <fonseca@xxxxxxx> writes: > > > $ git filter-branch H2 > > /home/fonseca/bin/git-filter-branch: 386: arith: syntax error: "i+1" > > $ > > > > A possible fix that makes the test pass for me. > > > > diff --git a/git-filter-branch.sh b/git-filter-branch.sh > > index 0c8a7df..5cf9d3c 100644 > > --- a/git-filter-branch.sh > > +++ b/git-filter-branch.sh > > @@ -339,7 +339,7 @@ test $commits -eq 0 && die "Found nothing to rewrite" > > > > i=0 > > while read commit; do > > - i=$((i+1)) > > + i=$(echo i+1 | bc) > > Are you sure this is not "echo $i+1"??? Yes, I noticed this right after sending the mail. People on this list are just too damn fast for me to send a correction. ;) > There are quite a few $((arithmetic)) already in our shell code, > so I was initially a bit surprised. However, upon closer > inspection, this particular use is not kosher at all. > > The portable ones we already have in the code say things like: > > msgnum=$(($msgnum+1)) Yes, I should have investigated before sending. > The one in filter-branch that bit you does not dereference 'i'. > I am reasonably sure if you fix it to read: > > i=$(( $i+1 )) > > dash would grok it. This works here. Even without the spaces. -- Jonas Fonseca - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html