Hi, On Wed, 18 Feb 2009, Jay Soffian wrote: > On Wed, Feb 18, 2009 at 8:28 AM, Johannes Schindelin > <Johannes.Schindelin@xxxxxx> wrote: > >> if test -z "$rebase_root" > >> then > >> # The upstream head must be given. Make sure it is valid. > >> upstream_name="$1" > >> shift > >> upstream=`git rev-parse --verify "${upstream_name}^0"` || > >> die "invalid upstream $upstream_name" > >> unset root_flag > >> upstream_arg="$upstream_name" > >> else > >> test -z "$newbase" && die "--root must be used with --onto" > >> unset upstream_name > >> unset upstream > >> root_flag="--root" > >> upstream_arg="$root_flag" > >> fi > >> > >> will do the trick, yes? > > > > Nope. Note the "shift" in the first arm? It is so that the code below > > can check for $#, and it indeed does, in a 'case' statement. > > The case statement checks $# against 1 and *, not 1 and 0. And I don't > see how > 1 is valid at that point. So I can modify the case statement > to check against 1, 0, and have * emit usage, or I think moving the > "test $# -gt 1 && usage" to where I suggested in the last message > would do the trick. The only difference would be whether a pre-rebase > hook runs in the case of invalid arguments (the case statement is > after that hook runs). Of course, you could also leave the test where it was, and just replace the 1 by a 2. Ciao, Dscho -- 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