From: Junio C Hamano Date: Mon, 20 Oct 2008 23:54:55 GMT Subject: Re: [PATCH] Teach/Fix pull/fetch -q/-v options Message-ID: <7vwsg22568.fsf@gitster.siamese.dyndns.org> In-Reply-To: <4ac8254d0810200935sf7ad873tea53c0fb53bbe1c0@mail.gmail.com> "Tuncer Ayaz" writes: > On Sun, Oct 19, 2008 at 11:26 PM, Junio C Hamano wrote: > ... >>> @@ -23,6 +24,10 @@ rebase=$(git config --bool branch.$curr_branch_short.rebase) >>> while : >>> do >>> case "$1" in >>> + -q|--quiet) >>> + verbosity="$verbosity -q" ;; >>> + -v|--verbose) >>> + verbosity="$verbosity -v" ;; >> >> You know verbosity flags (-q and -v) are "the last one wins", so I do not >> see much point in this concatenation. > > Without concatenation I would need to analyze the content > of the variable each time the option is passed to the shell > script. Do you know of a simpler/better way still keeping the > functionality that > $ git pull -q -v --quiet --verbose --quiet gives verbosity=QUIET > and > $ git pull -q -v --quiet --verbose --quiet -v yields verbosity=VERBOSE > ? Wouldn't verbosity= while : do case "$1" in -q|--quiet) verbosity=-q ;; -v|--verbose) verbosity=-v ;; ... others ... esac shift done git pull $verbosity other options give the -q for the former and -v for the latter to "git pull"?