From: Sergey Organov Date: Wed, 08 Oct 2014 10:12:00 GMT Subject: Re: [PATCH] git-merge: mutually match SYNOPSIS and "usage". Message-ID: <87h9zeg9an.fsf@osv.gnss.ru> In-Reply-To: Junio C Hamano writes: > Sergey Organov writes: > >> Junio C Hamano writes: >> ... >> I was looking at the merge.c code, and that's how it seems to work. You >> can get new semantics without -m, and you can't get old semantics with >> -m, isn't it? It looks like the set of descriptions I produced is >> formally correct. > > The thing is, with "-m " we will never fall into the > traditional syntax, hence "git merge -m HEAD " > appear to be allowed with "git merge [options] HEAD > ...", but it is not. No. When you see: git merge [options] [-m ] ... Isn't it obvious that 'options' don't include "-m ", so git merge [options] HEAD ... form will never apply when you have "-m " in the command, exaclty because 'options' don't include "-m > And the inverse is not true (an obvious example is "git merge > $branch", even though it does not have "-m " it uses the modern > & common. Sure, and this is covered as well. > So the updated SYNOPSIS is not really helping. I disagree, see above. I still think that for somewhat messy historical situation, the suggested syntax description is good enough. -- Sergey.