Junio C Hamano wrote: > The first thing to do is to eradicate "diff A..B" from the > documentation, and a dozen or more lines in your complaint will go > away with that single change. > > As you know, diff is about two endpoints, and A..B is not a way to > specify two endpoints, and not erroring it out whenever we see a > negative revision is a mere courtesy to old timers who knew the > command line parser was shared with rev-list machinery. > > There is no reason to forbid the syntax, but encouraging its use is > counterproductive and will lead to confusions to new people as you > pointed out.
Excellent. I agree wholeheartedly with this reasoning. > The only issue is to come up with a concise alternative way to > express "diff A...B", perhaps "diff --compare-with-base A B", and > then you can choose not to say anything but an object name (and no > range notation) on the command line (if you do not "diff A...B", it > can already be done by not using "diff A..B"). What are your thoughts on inventing a new syntax A~B = $(git merge-base A B) B which can be used by both range commands like log and non-range commands like diff ? (In other words, why shouldn't log be able to do this?). Does it matter which merge base we pick though? -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html