Defect #7518

Mercurial diff can be wrong if the previous changeset isn't the parent

Added by Toshi MARUYAMA almost 7 years ago. Updated almost 7 years ago.

Status:ClosedStart date:2011-02-02
Priority:NormalDue date:
Assignee:Toshi MARUYAMA% Done:

0%

Category:SCM
Target version:1.2.0
Resolution:Fixed Affected version:

Description

Mercurial is DAG-based DVCS.

Before r4662, Redmine runs "hg diff -r 4661 -r 4662" for http://www.redmine.org/projects/redmine/repository/revisions/4662/diff .
If r4661 is not parent of r4662, diff is wrong.

This is TortoiseHg 1.9 image of Redmine 1.1 Mercurial test repository.

Parent of revision 16 is revision 6.

thg-graph.png (24.9 KB) Toshi MARUYAMA, 2011-02-02 05:08


Related issues

Related to Redmine - Defect #3724: Mercurial repositories display revision ID instead of cha... Closed 2009-08-10
Related to Redmine - Defect #7253: Test failures in MercurialAdapterTest Closed 2011-01-09
Related to Redmine - Defect #8741: Git: diff is always empty in merged revsion Closed 2011-07-03

Associated revisions

Revision 4792
Added by Toshi MARUYAMA almost 7 years ago

scm: mercurial: add unit lib test for the previous changeset isn't the parent (#7253, #7518).

Revision 4853
Added by Toshi MARUYAMA almost 7 years ago

scm: mercurial: add instance value flag of whether "hg diff -c" supports at tests (#7518).

Revision 4854
Added by Toshi MARUYAMA almost 7 years ago

scm: mercurial: rewrite MercurialAdapter#diff by using helper extension (#4455, #7518).

fix incompatibility of diff with Mercurial < 1.1.

Contributed by Yuya Nishihara.

Revision 4855
Added by Toshi MARUYAMA almost 7 years ago

scm: mercurial: set instance value flag of whether "hg diff -c" supports true at tests (#7518).

Revision 4859
Added by Toshi MARUYAMA almost 7 years ago

scm: mercurial: fix Ruby 1.9 "hg diff" test fails (#7518).

History

#1 Updated by Toshi MARUYAMA almost 7 years ago

  • Target version deleted (1.2.0)

#2 Updated by Toshi MARUYAMA almost 7 years ago

  • Status changed from New to Closed
  • Target version set to 1.2.0
  • Resolution set to Fixed

Fixed by r4662 and r4854.

Mercurial can have two parents.
Diff for each parent is difficult in current Redmine interface.

Also available in: Atom PDF