view tests/test-evolve-content-divergent-first-changeset.t @ 5011:04104042c6ad

evolve: delete redundant and incorrect code for updating dirstate In relocate() when we notice conflicts, we will try to fix up the dirstate by calling copies.duplicatecopies() and dirstatedance(). However, we had called _evolvemerge() just before that point and that has already fixed up the dirstate, so there's no need to do it again. Also, we did it incorrectly as the test case shows.
author Martin von Zweigbergk <martinvonz@google.com>
date Tue, 19 Nov 2019 14:54:13 -0800
parents b779b40f996e
children 1f92a6aa40d6 946ebd8f08ea
line wrap: on
line source

  $ . $TESTDIR/testlib/pythonpath.sh
  $ echo "[extensions]" >> $HGRCPATH
  $ echo "evolve=" >> $HGRCPATH

This test file tests the case of content-divergence resolution of changesets
that have the null revision as the parent.

  $ hg init issue6201
  $ cd issue6201

  $ touch test
  $ hg add test
  $ hg commit -m test
  $ hg log -T '{node|short}\n'
  be090ea66256

  $ echo a >> test
  $ hg amend -m div1
  $ hg log -T '{node|short}\n'
  79fa0eb22d65

  $ hg up be090ea66256 --hidden --quiet
  updated to hidden changeset be090ea66256
  (hidden revision 'be090ea66256' was rewritten as: 79fa0eb22d65)
  working directory parent is obsolete! (be090ea66256)
  $ echo a >> test
  $ echo b >> test
  $ hg amend -m div2
  2 new content-divergent changesets
  $ hg log -T '{node|short}\n'
  4b2524b7508e
  79fa0eb22d65

  $ hg evolve --content-divergent --config ui.merge=internal:other
  merge:[1] div1
  with: [2] div2
  base: [0] test
  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
  working directory is now at 12772224141b

  $ hg evolve --list