GNU bug report logs -
#13405
24.3; log-view-diff-changeset reports wrong results
Previous Next
Full log
View this message in rfc822 format
On 11/01/2013 23:13, Stefan Monnier wrote:
>> 3) In the *vc-change-log* buffer, type D (log-view-diff-changeset) to view
>> the changeset for that single revision.
>> Emacs runs "hg diff --git -r 46768 -r 46769", but this does not show
>> the expected contents of the changeset, as the previous revision was
>> on a different named branch. Instead this shows the (large) diff between
>> the two branches. The line counts illustrate this:
>
>> # hg diff -r 46768 -r 46769 | wc -l ## Diff between branches
>> 102276
>> # hg diff -c 46769 | wc -l ## Changeset diff
>> 295
>> # hg log -p -r 46769 | wc -l ## Changeset diff + hg metadata
>> 302
>
>> The second and third commands give the expected output.
>> Can log-view-diff-changeset be changed to deal with this case more
>> gracefully ?
>
> VC assumes you can get the changeset by running
> "hg diff -r <something> -r 46769". Is there a <something> that would
> give the right answer? Ideally this <something> should be computable
> from "46769".
This can be done using revsets:
# hg diff -r46769^1 -r 46769 | wc -l
295
However that relies on having a new enough version of mercurial that
supports the revsets syntax. The "hg diff -c" or "hg log -p" commands
work with older mercurial versions that do not support revset syntax.
AndyM
This bug report was last modified 11 years and 214 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.