On 2020-05-27 22:43:58+0530, Shourya Shukla <shouryashukla.oo@xxxxxxxxx> wrote: > On 24/05 12:19, Kaartic Sivaraam wrote: > > As '--quiet' in 'set-branch' is a no-op and is being accepted only for > > uniformity, I think it makes sense to use OPT_NOOP_NOARG instead of > > OPT__QUIET for specifying it, as suggested by Danh. > > > > Also, the description "suppress output for setting default tracking branch" > > doesn't seem to be valid anymore as we don't print anything when set-branch > > succeeds. > > I think it will all boil down to the consistency of all the subcommands. > Changing this would require making changes in various places: the C code > (obviously), the shell script (not only the cmd_set_branch() function > but the part for accepting user input as well) and the Documentation (I > might have maybe missed a couple of other changes to list here too). Its I don't think this is a valid argument. Using OPT_NOOP_NOARG doesn't require any change in shell script since the binary still accepts -q|--quiet. The documentation of --quiet is still valid (since it doesn't print anything regardless) The only necessary change in in that C code. > not that I don't want to do this, but it would add unnecessary changes > don't you think? I would love it if others could weigh in their opinions > too about this. > > > + git ${wt_prefix:+-C "$wt_prefix"} ${prefix:+--super-prefix "$prefix"} submodule--helper set-branch ${GIT_QUIET:+--quiet} ${branch:+--branch $branch} ${default:+--default} -- "$@" > > > Danh questioned whether '$branch' needs to be quoted here. I too think it > > needs to be quoted unless I'm missing something. > > We want to do this because $branch is an argument right? We want to do this because we don't want to whitespace-split "$branch" Let's say, for some reason, this command was run: git submodule set-branch --branch "a-branch --branch another" a-submodule This version will run: git submodule--helper --branch a-branch --branch another a-submodule Which will success if there's a branch "another" in the "a-submodule". While that command should fail because we don't accept refname with space. -- Danh