tests/test-merge-commit.t
author Adrian Buehlmann <adrian@cadifra.com>
Wed, 26 Jan 2011 19:14:30 +0100
branchstable
changeset 13305 035684c6b69a
parent 12847 b00eda50ad2b
child 14182 ec5886db9dc6
permissions -rw-r--r--
opener: force copy on 'a'ppend if nlinks() returns 0 (issue1922) If pywin32 is not installed, 'os.lstat(pathname).st_nlink' is used for nlinks(), which is always zero for all files on Windows. To make sure we break up hardlinks if pywin32 is missing, we force nlink = 2 if nlinks() returns < 1. (this completely fixes issue1922)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12328
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12254
diff changeset
     1
Check that renames are correctly saved by a commit after a merge
12254
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
     2
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
     3
Test with the merge on 3 having the rename on the local parent
4058
e7282dede8cd filecommit: don't forget the local parent on a merge with a local rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
     4
12254
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
     5
  $ hg init a
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
     6
  $ cd a
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
     7
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
     8
  $ echo line1 > foo
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
     9
  $ hg add foo
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    10
  $ hg ci -m '0: add foo'
4058
e7282dede8cd filecommit: don't forget the local parent on a merge with a local rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    11
12254
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    12
  $ echo line2 >> foo
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    13
  $ hg ci -m '1: change foo'
4058
e7282dede8cd filecommit: don't forget the local parent on a merge with a local rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    14
12254
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    15
  $ hg up -C 0
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    16
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
4058
e7282dede8cd filecommit: don't forget the local parent on a merge with a local rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    17
12254
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    18
  $ hg mv foo bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    19
  $ rm bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    20
  $ echo line0 > bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    21
  $ echo line1 >> bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    22
  $ hg ci -m '2: mv foo bar; change bar'
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    23
  created new head
4058
e7282dede8cd filecommit: don't forget the local parent on a merge with a local rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    24
12254
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    25
  $ hg merge 1
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    26
  merging bar and foo to bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    27
  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    28
  (branch merge, don't forget to commit)
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    29
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    30
  $ cat bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    31
  line0
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    32
  line1
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    33
  line2
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    34
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    35
  $ hg ci -m '3: merge with local rename'
4058
e7282dede8cd filecommit: don't forget the local parent on a merge with a local rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    36
12254
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    37
  $ hg debugindex .hg/store/data/bar.i
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    38
     rev    offset  length   base linkrev nodeid       p1           p2
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    39
       0         0      77      0       2 d35118874825 000000000000 000000000000
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    40
       1        77      76      0       3 5345f5ab8abd 000000000000 d35118874825
4058
e7282dede8cd filecommit: don't forget the local parent on a merge with a local rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    41
12254
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    42
  $ hg debugrename bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    43
  bar renamed from foo:9e25c27b87571a1edee5ae4dddee5687746cc8e2
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    44
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    45
  $ hg debugindex .hg/store/data/foo.i
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    46
     rev    offset  length   base linkrev nodeid       p1           p2
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    47
       0         0       7      0       0 690b295714ae 000000000000 000000000000
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    48
       1         7      13      1       1 9e25c27b8757 690b295714ae 000000000000
4058
e7282dede8cd filecommit: don't forget the local parent on a merge with a local rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    49
e7282dede8cd filecommit: don't forget the local parent on a merge with a local rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    50
12254
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    51
Revert the content change from rev 2:
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    52
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    53
  $ hg up -C 2
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    54
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    55
  $ rm bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    56
  $ echo line1 > bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    57
  $ hg ci -m '4: revert content change from rev 2'
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    58
  created new head
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    59
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    60
  $ hg log --template '{rev}:{node|short} {parents}\n'
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    61
  4:2263c1be0967 2:0f2ff26688b9 
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    62
  3:0555950ead28 2:0f2ff26688b9 1:5cd961e4045d 
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    63
  2:0f2ff26688b9 0:2665aaee66e9 
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    64
  1:5cd961e4045d 
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    65
  0:2665aaee66e9 
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    66
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    67
This should use bar@rev2 as the ancestor:
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    68
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    69
  $ hg --debug merge 3
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    70
    searching for copies back to rev 1
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    71
  resolving manifests
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    72
   overwrite None partial False
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    73
   ancestor 0f2ff26688b9 local 2263c1be0967+ remote 0555950ead28
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    74
   bar: versions differ -> m
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    75
  preserving bar for resolve of bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    76
  updating: bar 1/1 files (100.00%)
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    77
  picked tool 'internal:merge' for bar (binary False symlink False)
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    78
  merging bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    79
  my bar@2263c1be0967+ other bar@0555950ead28 ancestor bar@0f2ff26688b9
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    80
   premerge successful
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    81
  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    82
  (branch merge, don't forget to commit)
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    83
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    84
  $ cat bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    85
  line1
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    86
  line2
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    87
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    88
  $ hg ci -m '5: merge'
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    89
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    90
  $ hg debugindex .hg/store/data/bar.i
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    91
     rev    offset  length   base linkrev nodeid       p1           p2
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    92
       0         0      77      0       2 d35118874825 000000000000 000000000000
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    93
       1        77      76      0       3 5345f5ab8abd 000000000000 d35118874825
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    94
       2       153       7      2       4 ff4b45017382 d35118874825 000000000000
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    95
       3       160      13      3       5 3701b4893544 ff4b45017382 5345f5ab8abd
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    96
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    97
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    98
Same thing, but with the merge on 3 having the rename
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
    99
on the remote parent:
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   100
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   101
  $ cd ..
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   102
  $ hg clone -U -r 1 -r 2 a b
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   103
  adding changesets
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   104
  adding manifests
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   105
  adding file changes
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   106
  added 3 changesets with 3 changes to 2 files (+1 heads)
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   107
  $ cd b
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   108
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   109
  $ hg up -C 1
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   110
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   111
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   112
  $ hg merge 2
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   113
  merging foo and bar to bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   114
  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   115
  (branch merge, don't forget to commit)
4058
e7282dede8cd filecommit: don't forget the local parent on a merge with a local rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
   116
12254
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   117
  $ cat bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   118
  line0
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   119
  line1
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   120
  line2
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   121
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   122
  $ hg ci -m '3: merge with remote rename'
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   123
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   124
  $ hg debugindex .hg/store/data/bar.i
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   125
     rev    offset  length   base linkrev nodeid       p1           p2
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   126
       0         0      77      0       2 d35118874825 000000000000 000000000000
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   127
       1        77      76      0       3 5345f5ab8abd 000000000000 d35118874825
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   128
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   129
  $ hg debugrename bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   130
  bar renamed from foo:9e25c27b87571a1edee5ae4dddee5687746cc8e2
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   131
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   132
  $ hg debugindex .hg/store/data/foo.i
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   133
     rev    offset  length   base linkrev nodeid       p1           p2
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   134
       0         0       7      0       0 690b295714ae 000000000000 000000000000
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   135
       1         7      13      1       1 9e25c27b8757 690b295714ae 000000000000
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   136
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   137
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   138
Revert the content change from rev 2:
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   139
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   140
  $ hg up -C 2
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   141
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   142
  $ rm bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   143
  $ echo line1 > bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   144
  $ hg ci -m '4: revert content change from rev 2'
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   145
  created new head
4058
e7282dede8cd filecommit: don't forget the local parent on a merge with a local rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
   146
12254
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   147
  $ hg log --template '{rev}:{node|short} {parents}\n'
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   148
  4:2263c1be0967 2:0f2ff26688b9 
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   149
  3:3ffa6b9e35f0 1:5cd961e4045d 2:0f2ff26688b9 
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   150
  2:0f2ff26688b9 0:2665aaee66e9 
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   151
  1:5cd961e4045d 
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   152
  0:2665aaee66e9 
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   153
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   154
This should use bar@rev2 as the ancestor:
4058
e7282dede8cd filecommit: don't forget the local parent on a merge with a local rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
   155
12254
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   156
  $ hg --debug merge 3
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   157
    searching for copies back to rev 1
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   158
  resolving manifests
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   159
   overwrite None partial False
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   160
   ancestor 0f2ff26688b9 local 2263c1be0967+ remote 3ffa6b9e35f0
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   161
   bar: versions differ -> m
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   162
  preserving bar for resolve of bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   163
  updating: bar 1/1 files (100.00%)
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   164
  picked tool 'internal:merge' for bar (binary False symlink False)
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   165
  merging bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   166
  my bar@2263c1be0967+ other bar@3ffa6b9e35f0 ancestor bar@0f2ff26688b9
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   167
   premerge successful
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   168
  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   169
  (branch merge, don't forget to commit)
4058
e7282dede8cd filecommit: don't forget the local parent on a merge with a local rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
   170
12254
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   171
  $ cat bar
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   172
  line1
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   173
  line2
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   174
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   175
  $ hg ci -m '5: merge'
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   176
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   177
  $ hg debugindex .hg/store/data/bar.i
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   178
     rev    offset  length   base linkrev nodeid       p1           p2
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   179
       0         0      77      0       2 d35118874825 000000000000 000000000000
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   180
       1        77      76      0       3 5345f5ab8abd 000000000000 d35118874825
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   181
       2       153       7      2       4 ff4b45017382 d35118874825 000000000000
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   182
       3       160      13      3       5 3701b4893544 ff4b45017382 5345f5ab8abd
852f10a15a6d tests: unify test-merge-commit
Adrian Buehlmann <adrian@cadifra.com>
parents: 8523
diff changeset
   183