diff options
author | Jeff King <peff@peff.net> | 2008-05-14 00:01:22 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-05-13 21:44:48 -0700 |
commit | bbf08124e0a87658a76b53a05d67227fa3b4e7b9 (patch) | |
tree | e3eb0c8faee5837f0f0eefb8f831c068f67a2705 /git-rebase.sh | |
parent | 64c0d71ce91696dfe5beb4b51e3233e56c857290 (diff) | |
download | git-bbf08124e0a87658a76b53a05d67227fa3b4e7b9.tar.gz git-bbf08124e0a87658a76b53a05d67227fa3b4e7b9.tar.xz |
fix bsd shell negation
On some shells (notably /bin/sh on FreeBSD 6.1), the
construct
foo && ! bar | baz
is true if
foo && baz
whereas for most other shells (such as bash) is true if
foo && ! baz
We can work around this by specifying
foo && ! (bar | baz)
which works everywhere.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'git-rebase.sh')
-rwxr-xr-x | git-rebase.sh | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/git-rebase.sh b/git-rebase.sh index 9b13b833c..fbb0f288b 100755 --- a/git-rebase.sh +++ b/git-rebase.sh @@ -353,7 +353,7 @@ orig_head=$branch mb=$(git merge-base "$onto" "$branch") if test "$upstream" = "$onto" && test "$mb" = "$onto" && # linear history? - ! git rev-list --parents "$onto".."$branch" | grep " .* " > /dev/null + ! (git rev-list --parents "$onto".."$branch" | grep " .* ") > /dev/null then # Lazily switch to the target branch if needed... test -z "$switch_to" || git checkout "$switch_to" |