Issue #2127 closed

Diff to local doesn't work when merging

Sebastian Krysmanski
created an issue

When merging two branches diffing the resulting file against the local file (i.e. from the branch not pulled in) doesn't work. It always says the revision doesn't exist, although the correct revision is chosen (see screenshot).

This happens when:

  • clicking the "Diff to local" button in the merge dialog ("Diff to other" works though)
  • clicking on "Diff to parent" in the "Commit" view (available when closing the merge dialog without committing).

The diff pane in TortoiseHg itself works correctly (i.e. shows the correct diff).

Comments (7)

  1. Yuya Nishihara

    Hi, I tried to reproduce this, but couldn't. What I did is,

    1. create a multi-head repo

    hg init repo
    cd repo
    echo 'quick' >> foo; hg ci -Am 'rev0'
    echo 'fox' >> foo; hg ci -Am 'rev1'
    hg up 0
    echo 'jumps' >> foo; hg ci -Am 'rev2'
    

    2. merge rev1 with local by using TortoiseHg, and resolve conflicts

    3. click [Diff to Local] and [Diff to Parent] buttons (both worked fine)

    Can you point out missing or wrong step if any?

  2. Yuya Nishihara

    On my machine, [Diff to Local] worked fine. [Diff to Other] (and [3-Way Diff]) are grayed out.

    Windows xp 32bit, TortoiseHg 2.5, Mercurial 2.3.1, WinMerge 2.12.4.0.

  3. Log in to comment