Re: [BUG] Highly inconsistent diff UI

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

 



Ramkumar Ramachandra wrote:
> The range version of $(git merge-base A B) B is B ^$(git merge-base A
> B), and not B --not $(git merge-base --all A B) [which is equivalent
> to B ^A or A..B].

Let me make this easier for you, and everyone else.

In git.git, checkout master and merge 9915605c^2 (rr/shortlog-doc).
So, my changeset has graduated from 'pu' to 'master' (I know 'master'
is directly ahead of 'pu', and this is not what you do; but this is
just an exercise).  Now, I execute git log master..pu and search for
the author "Ramkumar Ramachandra".  I can see that my shortlog-doc
commits aren't present; so I infer that my changes have graduated to
master.  I can also see the merge commit corresponding to
rr/shortlog-doc, and infer that master merged in rr/shortlog-doc
differently.

If I execute git log pu ^$(git merge-base master pu), I see the merge
commit rr/shortlog-doc _and_ the shortlog-doc commits.  Here, I don't
want to know if my change graduated to master or not: I just want to
know what changes were introduced by the pu branch since the last
fork.  Think of it as a time-truncated version of git log pu: it has
nothing to do with reachability.  The only reason that master even
appears in the command is because I need to specify where pu forked
off from.

I would argue that this is incredibly useful: to see what changes were
introduced by "my branch" independent of everything else.  What do you
think?
--
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]