Re: Confusion about diffing branches

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Aug 28, 2007 at 12:34:06AM -0700, Junio C Hamano wrote:
> So let's fix (1) and (2) like this.

Thank you!!!

> +2. Generic <revision range> expression (see "SPECIFYING
> +   REVISIONS" section in gitlink:git-rev-parse[1]) means the
> +   commits in the specified range.  A single commit, when
> +   interpreted as a <revision range> expression, means
> +   "everything that leads to that commit", but that is taken as
> +   the special case above.  If you want to format everything
> +   since project inception to one commit, say "git format-patch
> +   \--root <that-commit>", as showing the root commit as patch
> +   requires \--root option anyway.

Maybe the last sentence should be omitted?  The fact that sometimes
you need to specify --root is pretty well hidden as a plumbing-level
option up until now, so what --root does is largely an impleementation
detail that the average user doesn't need to know and would probably
confuse him/her deeply anyway.  (i.e., it's needed by git-diff-tree,
but it's not needed by git-diff.)

BTW, I'm probably missing some history here, but why isn't
--root/rev->show_root_diff=1 the default?  Why do we have the
log.showroot config option; what are the circumstances when anyone
would want to set log.showroot to 0?

>  	if (rev.pending.nr == 1) {
> -		if (rev.max_count < 0) {
> +		if (rev.max_count < 0 && !rev.show_root_diff) {
> +			/*
> +			 * This is traditional behaviour of "git format-patch
> +			 * origin" that prepares what the origin side still
> +			 * does not have.
> +			 */

Thanks for adding that comment; for someone who is still trying to
understand how the revision walker infrastructure works, it will be
very helpful!

						- Ted

-
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

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux