tests/test-merge-types.t
author Jun Wu <quark@fb.com>
Sun, 06 Aug 2017 11:40:53 -0700
changeset 33708 71b77b61ed60
parent 32698 1b5c61d38a52
child 35704 41ef02ba329b
permissions -rw-r--r--
test-rebase: add a brute force test Rebase is becoming more complex and it looks like a good idea to try some brute force enumeration to cover cases that are hard to find manually. Using brute force to generate repos in different shapes and enumerating the rebase source and destination would generate too many cases that takes too long to compute. This patch limits the "brute force" to only the "rebase source" part. Repo and destination are still manual. The added test cases are crafted manually to reveal some behaviors that are not covered by other tests: - "revlog index out of range" crash - after rebase, p1 == p2, p2 != null - "nothing to merge" abort In the future we might want to add more tests here. For now I'm more interested in revealing interesting behaviors in a minified way. I tried some more complex cases but didn't find other interesting behaviors. Differential Revision: https://phab.mercurial-scm.org/D262
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 21947
diff changeset
     1
#require symlink execbit
15441
e0348815e806 tests: use 'hghave symlink' for tests using symlinks
Mads Kiilerich <mads@kiilerich.com>
parents: 12279
diff changeset
     2
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
     3
  $ tellmeabout() {
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
     4
  > if [ -h $1 ]; then
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
     5
  >     echo $1 is a symlink:
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
     6
  >     $TESTDIR/readlink.py $1
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
     7
  > elif [ -x $1 ]; then
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
     8
  >     echo $1 is an executable file with content:
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
     9
  >     cat $1
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
    10
  > else
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
    11
  >     echo $1 is a plain file with content:
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
    12
  >     cat $1
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
    13
  > fi
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
    14
  > }
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
    15
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
    16
  $ hg init test1
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
    17
  $ cd test1
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    18
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5710
diff changeset
    19
  $ echo a > a
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
    20
  $ hg ci -Aqmadd
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5710
diff changeset
    21
  $ chmod +x a
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5710
diff changeset
    22
  $ hg ci -mexecutable
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    23
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
    24
  $ hg up -q 0
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5710
diff changeset
    25
  $ rm a
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5710
diff changeset
    26
  $ ln -s symlink a
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5710
diff changeset
    27
  $ hg ci -msymlink
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5710
diff changeset
    28
  created new head
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    29
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
    30
Symlink is local parent, executable is other:
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
    31
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5710
diff changeset
    32
  $ hg merge --debug
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5710
diff changeset
    33
    searching for copies back to rev 1
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5710
diff changeset
    34
  resolving manifests
18605
bcf29565d89f manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents: 18541
diff changeset
    35
   branchmerge: True, force: False, partial: False
15625
efdcce3fd2d5 merge: make debug output easier to read
Martin Geisler <mg@aragost.com>
parents: 15442
diff changeset
    36
   ancestor: c334dc3be0da, local: 521a1e40188f+, remote: 3574f3e69b1c
21391
cb15835456cb merge: change debug logging - test output changes but no real changes
Mads Kiilerich <madski@unity3d.com>
parents: 21267
diff changeset
    37
   preserving a for resolve of a
26618
8e6d5b7317e6 merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
    38
   a: versions differ -> m (premerge)
27161
296d55def9c4 filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
    39
  picked tool ':merge' for a (binary False symlink True changedelete False)
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    40
  merging a
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    41
  my a@521a1e40188f+ other a@3574f3e69b1c ancestor a@c334dc3be0da
22707
38e0363dcbe0 filemerge: switch the default name for internal tools from internal:x to :x
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
    42
  warning: internal :merge cannot merge symlinks for a
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26519
diff changeset
    43
  warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    44
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    45
  use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    46
  [1]
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    47
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
    48
  $ tellmeabout a
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    49
  a is a symlink:
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    50
  a -> symlink
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    51
  $ hg resolve a --tool internal:other
21947
b081decd9062 resolve: add parenthesis around "no more unresolved files" message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21693
diff changeset
    52
  (no more unresolved files)
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    53
  $ tellmeabout a
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    54
  a is an executable file with content:
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    55
  a
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    56
  $ hg st
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    57
  M a
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    58
  ? a.orig
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    59
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
    60
Symlink is other parent, executable is local:
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5710
diff changeset
    61
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5710
diff changeset
    62
  $ hg update -C 1
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5710
diff changeset
    63
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    64
26518
a77679d0b887 filemerge: print correct name of tool for symlink checks
Siddharth Agarwal <sid0@fb.com>
parents: 26517
diff changeset
    65
  $ hg merge --debug --tool :union
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5710
diff changeset
    66
    searching for copies back to rev 1
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5710
diff changeset
    67
  resolving manifests
18605
bcf29565d89f manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents: 18541
diff changeset
    68
   branchmerge: True, force: False, partial: False
15625
efdcce3fd2d5 merge: make debug output easier to read
Martin Geisler <mg@aragost.com>
parents: 15442
diff changeset
    69
   ancestor: c334dc3be0da, local: 3574f3e69b1c+, remote: 521a1e40188f
21391
cb15835456cb merge: change debug logging - test output changes but no real changes
Mads Kiilerich <madski@unity3d.com>
parents: 21267
diff changeset
    70
   preserving a for resolve of a
26618
8e6d5b7317e6 merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
    71
   a: versions differ -> m (premerge)
27161
296d55def9c4 filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
    72
  picked tool ':union' for a (binary False symlink True changedelete False)
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    73
  merging a
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    74
  my a@3574f3e69b1c+ other a@521a1e40188f ancestor a@c334dc3be0da
26518
a77679d0b887 filemerge: print correct name of tool for symlink checks
Siddharth Agarwal <sid0@fb.com>
parents: 26517
diff changeset
    75
  warning: internal :union cannot merge symlinks for a
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26519
diff changeset
    76
  warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    77
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    78
  use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    79
  [1]
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    80
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
    81
  $ tellmeabout a
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    82
  a is an executable file with content:
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
    83
  a
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5710
diff changeset
    84
26519
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
    85
  $ hg update -C 1
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
    86
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
    87
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
    88
  $ hg merge --debug --tool :merge3
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
    89
    searching for copies back to rev 1
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
    90
  resolving manifests
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
    91
   branchmerge: True, force: False, partial: False
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
    92
   ancestor: c334dc3be0da, local: 3574f3e69b1c+, remote: 521a1e40188f
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
    93
   preserving a for resolve of a
26618
8e6d5b7317e6 merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
    94
   a: versions differ -> m (premerge)
27161
296d55def9c4 filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
    95
  picked tool ':merge3' for a (binary False symlink True changedelete False)
26519
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
    96
  merging a
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
    97
  my a@3574f3e69b1c+ other a@521a1e40188f ancestor a@c334dc3be0da
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
    98
  warning: internal :merge3 cannot merge symlinks for a
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26519
diff changeset
    99
  warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
26519
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
   100
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
   101
  use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
   102
  [1]
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
   103
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
   104
  $ tellmeabout a
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
   105
  a is an executable file with content:
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
   106
  a
48476c6129a2 filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents: 26518
diff changeset
   107
26892
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   108
  $ hg update -C 1
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   109
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   110
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   111
  $ hg merge --debug --tool :merge-local
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   112
    searching for copies back to rev 1
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   113
  resolving manifests
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   114
   branchmerge: True, force: False, partial: False
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   115
   ancestor: c334dc3be0da, local: 3574f3e69b1c+, remote: 521a1e40188f
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   116
   preserving a for resolve of a
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   117
   a: versions differ -> m (premerge)
27161
296d55def9c4 filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
   118
  picked tool ':merge-local' for a (binary False symlink True changedelete False)
26892
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   119
  merging a
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   120
  my a@3574f3e69b1c+ other a@521a1e40188f ancestor a@c334dc3be0da
26893
19c4b93cb7d6 filemerge: move :merge-local/other symlink check to precheck
Siddharth Agarwal <sid0@fb.com>
parents: 26892
diff changeset
   121
  warning: internal :merge-local cannot merge symlinks for a
26892
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   122
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   123
  use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   124
  [1]
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   125
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   126
  $ tellmeabout a
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   127
  a is an executable file with content:
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   128
  a
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   129
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   130
  $ hg update -C 1
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   131
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   132
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   133
  $ hg merge --debug --tool :merge-other
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   134
    searching for copies back to rev 1
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   135
  resolving manifests
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   136
   branchmerge: True, force: False, partial: False
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   137
   ancestor: c334dc3be0da, local: 3574f3e69b1c+, remote: 521a1e40188f
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   138
   preserving a for resolve of a
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   139
   a: versions differ -> m (premerge)
27161
296d55def9c4 filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
   140
  picked tool ':merge-other' for a (binary False symlink True changedelete False)
26892
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   141
  merging a
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   142
  my a@3574f3e69b1c+ other a@521a1e40188f ancestor a@c334dc3be0da
26893
19c4b93cb7d6 filemerge: move :merge-local/other symlink check to precheck
Siddharth Agarwal <sid0@fb.com>
parents: 26892
diff changeset
   143
  warning: internal :merge-other cannot merge symlinks for a
26892
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   144
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   145
  use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   146
  [1]
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   147
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   148
  $ tellmeabout a
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   149
  a is an executable file with content:
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   150
  a
4b966aaadc45 test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   151
16255
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   152
Update to link without local change should get us a symlink (issue3316):
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   153
17110
722fd97f6645 tests: fix test markup in test-merge-types.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16355
diff changeset
   154
  $ hg up -C 0
722fd97f6645 tests: fix test markup in test-merge-types.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16355
diff changeset
   155
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
722fd97f6645 tests: fix test markup in test-merge-types.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16355
diff changeset
   156
  $ hg up
722fd97f6645 tests: fix test markup in test-merge-types.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16355
diff changeset
   157
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
32698
1b5c61d38a52 update: show the commit to which we updated in case of multiple heads (BC)
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32253
diff changeset
   158
  updated to "521a1e40188f: symlink"
28029
72072cfc7e91 update: warn about other topological heads on bare update
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27164
diff changeset
   159
  1 other heads for branch "default"
17110
722fd97f6645 tests: fix test markup in test-merge-types.t
Mads Kiilerich <mads@kiilerich.com>
parents: 16355
diff changeset
   160
  $ hg st
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   161
  ? a.orig
16255
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   162
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   163
Update to link with local change should cause a merge prompt (issue3200):
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   164
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   165
  $ hg up -Cq 0
16255
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   166
  $ echo data > a
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   167
  $ HGMERGE= hg up -y --debug
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   168
    searching for copies back to rev 2
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   169
  resolving manifests
18605
bcf29565d89f manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents: 18541
diff changeset
   170
   branchmerge: False, force: False, partial: False
16255
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   171
   ancestor: c334dc3be0da, local: c334dc3be0da+, remote: 521a1e40188f
21391
cb15835456cb merge: change debug logging - test output changes but no real changes
Mads Kiilerich <madski@unity3d.com>
parents: 21267
diff changeset
   172
   preserving a for resolve of a
26618
8e6d5b7317e6 merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
   173
   a: versions differ -> m (premerge)
16355
cb1475e7e5a2 test-merge-types: allow different output with existing hgmerge (issue3346)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16255
diff changeset
   174
  (couldn't find merge tool hgmerge|tool hgmerge can't handle symlinks) (re)
32253
7d4ce4b567c5 filemerge: show warning about choice of :prompt only at an actual fallback
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30460
diff changeset
   175
  no tool found to merge a
27161
296d55def9c4 filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents: 26967
diff changeset
   176
  picked tool ':prompt' for a (binary False symlink True changedelete False)
32253
7d4ce4b567c5 filemerge: show warning about choice of :prompt only at an actual fallback
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 30460
diff changeset
   177
  keep (l)ocal [working copy], take (o)ther [destination], or leave (u)nresolved for a? u
27164
88d5db4b155c filemerge: default regular prompts to 'leave unresolved' (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 27162
diff changeset
   178
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
88d5db4b155c filemerge: default regular prompts to 'leave unresolved' (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 27162
diff changeset
   179
  use 'hg resolve' to retry unresolved file merges
32698
1b5c61d38a52 update: show the commit to which we updated in case of multiple heads (BC)
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32253
diff changeset
   180
  updated to "521a1e40188f: symlink"
28029
72072cfc7e91 update: warn about other topological heads on bare update
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27164
diff changeset
   181
  1 other heads for branch "default"
27164
88d5db4b155c filemerge: default regular prompts to 'leave unresolved' (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 27162
diff changeset
   182
  [1]
16255
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   183
  $ hg diff --git
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   184
  diff --git a/a b/a
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   185
  old mode 120000
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   186
  new mode 100644
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   187
  --- a/a
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   188
  +++ b/a
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   189
  @@ -1,1 +1,1 @@
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   190
  -symlink
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   191
  \ No newline at end of file
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   192
  +data
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   193
ca5cc2976574 merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents: 15625
diff changeset
   194
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   195
Test only 'l' change - happens rarely, except when recovering from situations
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   196
where that was what happened.
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   197
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   198
  $ hg init test2
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   199
  $ cd test2
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   200
  $ printf base > f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   201
  $ hg ci -Aqm0
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   202
  $ echo file > f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   203
  $ echo content >> f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   204
  $ hg ci -qm1
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   205
  $ hg up -qr0
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   206
  $ rm f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   207
  $ ln -s base f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   208
  $ hg ci -qm2
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   209
  $ hg merge
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   210
  merging f
22707
38e0363dcbe0 filemerge: switch the default name for internal tools from internal:x to :x
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   211
  warning: internal :merge cannot merge symlinks for f
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26519
diff changeset
   212
  warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   213
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   214
  use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   215
  [1]
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   216
  $ tellmeabout f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   217
  f is a symlink:
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   218
  f -> base
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   219
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   220
  $ hg up -Cqr1
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   221
  $ hg merge
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   222
  merging f
22707
38e0363dcbe0 filemerge: switch the default name for internal tools from internal:x to :x
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   223
  warning: internal :merge cannot merge symlinks for f
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26519
diff changeset
   224
  warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   225
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   226
  use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   227
  [1]
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   228
  $ tellmeabout f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   229
  f is a plain file with content:
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   230
  file
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   231
  content
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   232
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   233
  $ cd ..
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   234
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   235
Test removed 'x' flag merged with change to symlink
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   236
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   237
  $ hg init test3
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   238
  $ cd test3
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   239
  $ echo f > f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   240
  $ chmod +x f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   241
  $ hg ci -Aqm0
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   242
  $ chmod -x f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   243
  $ hg ci -qm1
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   244
  $ hg up -qr0
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   245
  $ rm f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   246
  $ ln -s dangling f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   247
  $ hg ci -qm2
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   248
  $ hg merge
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   249
  merging f
22707
38e0363dcbe0 filemerge: switch the default name for internal tools from internal:x to :x
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   250
  warning: internal :merge cannot merge symlinks for f
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26519
diff changeset
   251
  warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   252
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   253
  use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   254
  [1]
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   255
  $ tellmeabout f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   256
  f is a symlink:
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   257
  f -> dangling
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   258
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   259
  $ hg up -Cqr1
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   260
  $ hg merge
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   261
  merging f
22707
38e0363dcbe0 filemerge: switch the default name for internal tools from internal:x to :x
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   262
  warning: internal :merge cannot merge symlinks for f
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26519
diff changeset
   263
  warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   264
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   265
  use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   266
  [1]
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   267
  $ tellmeabout f
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   268
  f is a plain file with content:
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   269
  f
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   270
18505
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   271
Test removed 'x' flag merged with content change - both ways
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   272
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   273
  $ hg up -Cqr0
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   274
  $ echo change > f
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   275
  $ hg ci -qm3
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   276
  $ hg merge -r1
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   277
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   278
  (branch merge, don't forget to commit)
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   279
  $ tellmeabout f
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   280
  f is a plain file with content:
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   281
  change
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   282
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   283
  $ hg up -qCr1
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   284
  $ hg merge -r3
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   285
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   286
  (branch merge, don't forget to commit)
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   287
  $ tellmeabout f
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   288
  f is a plain file with content:
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   289
  change
9de9727cea53 merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents: 18338
diff changeset
   290
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   291
  $ cd ..
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   292
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   293
Test merge with no common ancestor:
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   294
a: just different
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   295
b: x vs -, different (cannot calculate x, cannot ask merge tool)
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   296
c: x vs -, same (cannot calculate x, merge tool is no good)
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   297
d: x vs l, different
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   298
e: x vs l, same
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   299
f: - vs l, different
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   300
g: - vs l, same
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   301
h: l vs l, different
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   302
(where same means the filelog entry is shared and there thus is an ancestor!)
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   303
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   304
  $ hg init test4
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   305
  $ cd test4
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   306
  $ echo 0 > 0
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   307
  $ hg ci -Aqm0
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   308
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   309
  $ echo 1 > a
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   310
  $ echo 1 > b
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   311
  $ chmod +x b
30160
008c4ce64e3f tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30062
diff changeset
   312
  $ echo 1 > bx
008c4ce64e3f tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30062
diff changeset
   313
  $ chmod +x bx
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   314
  $ echo x > c
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   315
  $ chmod +x c
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   316
  $ echo 1 > d
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   317
  $ chmod +x d
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   318
  $ printf x > e
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   319
  $ chmod +x e
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   320
  $ echo 1 > f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   321
  $ printf x > g
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   322
  $ ln -s 1 h
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   323
  $ hg ci -qAm1
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   324
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   325
  $ hg up -qr0
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   326
  $ echo 2 > a
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   327
  $ echo 2 > b
30160
008c4ce64e3f tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30062
diff changeset
   328
  $ echo 2 > bx
008c4ce64e3f tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30062
diff changeset
   329
  $ chmod +x bx
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   330
  $ echo x > c
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   331
  $ ln -s 2 d
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   332
  $ ln -s x e
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   333
  $ ln -s 2 f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   334
  $ ln -s x g
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   335
  $ ln -s 2 h
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   336
  $ hg ci -Aqm2
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   338
  $ hg merge
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   339
  merging a
30162
5cb830801855 merge: clarify warning for (not) merging flags without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30161
diff changeset
   340
  warning: cannot merge flags for b without common ancestor - keeping local flags
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   341
  merging b
30160
008c4ce64e3f tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30062
diff changeset
   342
  merging bx
30162
5cb830801855 merge: clarify warning for (not) merging flags without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30161
diff changeset
   343
  warning: cannot merge flags for c without common ancestor - keeping local flags
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   344
  merging d
22707
38e0363dcbe0 filemerge: switch the default name for internal tools from internal:x to :x
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   345
  warning: internal :merge cannot merge symlinks for d
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26519
diff changeset
   346
  warning: conflicts while merging d! (edit, then use 'hg resolve --mark')
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   347
  merging f
22707
38e0363dcbe0 filemerge: switch the default name for internal tools from internal:x to :x
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   348
  warning: internal :merge cannot merge symlinks for f
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26519
diff changeset
   349
  warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   350
  merging h
22707
38e0363dcbe0 filemerge: switch the default name for internal tools from internal:x to :x
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   351
  warning: internal :merge cannot merge symlinks for h
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26519
diff changeset
   352
  warning: conflicts while merging h! (edit, then use 'hg resolve --mark')
26618
8e6d5b7317e6 merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
   353
  warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
8e6d5b7317e6 merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
   354
  warning: conflicts while merging b! (edit, then use 'hg resolve --mark')
30160
008c4ce64e3f tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30062
diff changeset
   355
  warning: conflicts while merging bx! (edit, then use 'hg resolve --mark')
008c4ce64e3f tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30062
diff changeset
   356
  3 files updated, 0 files merged, 0 files removed, 6 files unresolved
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   357
  use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   358
  [1]
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   359
  $ hg resolve -l
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   360
  U a
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   361
  U b
30160
008c4ce64e3f tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30062
diff changeset
   362
  U bx
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   363
  U d
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   364
  U f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   365
  U h
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   366
  $ tellmeabout a
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   367
  a is a plain file with content:
30160
008c4ce64e3f tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30062
diff changeset
   368
  <<<<<<< working copy: 0c617753b41b - test: 2
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   369
  2
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   370
  =======
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   371
  1
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30162
diff changeset
   372
  >>>>>>> merge rev:    2e60aa20b912 - test: 1
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   373
  $ tellmeabout b
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   374
  b is a plain file with content:
30160
008c4ce64e3f tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30062
diff changeset
   375
  <<<<<<< working copy: 0c617753b41b - test: 2
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   376
  2
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   377
  =======
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   378
  1
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30162
diff changeset
   379
  >>>>>>> merge rev:    2e60aa20b912 - test: 1
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   380
  $ tellmeabout c
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   381
  c is a plain file with content:
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   382
  x
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   383
  $ tellmeabout d
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   384
  d is a symlink:
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   385
  d -> 2
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   386
  $ tellmeabout e
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   387
  e is a symlink:
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   388
  e -> x
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   389
  $ tellmeabout f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   390
  f is a symlink:
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   391
  f -> 2
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   392
  $ tellmeabout g
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   393
  g is a symlink:
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   394
  g -> x
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   395
  $ tellmeabout h
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   396
  h is a symlink:
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   397
  h -> 2
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   398
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   399
  $ hg up -Cqr1
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   400
  $ hg merge
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   401
  merging a
30162
5cb830801855 merge: clarify warning for (not) merging flags without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30161
diff changeset
   402
  warning: cannot merge flags for b without common ancestor - keeping local flags
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   403
  merging b
30160
008c4ce64e3f tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30062
diff changeset
   404
  merging bx
30162
5cb830801855 merge: clarify warning for (not) merging flags without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30161
diff changeset
   405
  warning: cannot merge flags for c without common ancestor - keeping local flags
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   406
  merging d
22707
38e0363dcbe0 filemerge: switch the default name for internal tools from internal:x to :x
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   407
  warning: internal :merge cannot merge symlinks for d
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26519
diff changeset
   408
  warning: conflicts while merging d! (edit, then use 'hg resolve --mark')
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   409
  merging f
22707
38e0363dcbe0 filemerge: switch the default name for internal tools from internal:x to :x
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   410
  warning: internal :merge cannot merge symlinks for f
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26519
diff changeset
   411
  warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   412
  merging h
22707
38e0363dcbe0 filemerge: switch the default name for internal tools from internal:x to :x
Mads Kiilerich <madski@unity3d.com>
parents: 22046
diff changeset
   413
  warning: internal :merge cannot merge symlinks for h
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26519
diff changeset
   414
  warning: conflicts while merging h! (edit, then use 'hg resolve --mark')
26618
8e6d5b7317e6 merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
   415
  warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
8e6d5b7317e6 merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
   416
  warning: conflicts while merging b! (edit, then use 'hg resolve --mark')
30160
008c4ce64e3f tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30062
diff changeset
   417
  warning: conflicts while merging bx! (edit, then use 'hg resolve --mark')
008c4ce64e3f tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30062
diff changeset
   418
  3 files updated, 0 files merged, 0 files removed, 6 files unresolved
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   419
  use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   420
  [1]
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   421
  $ tellmeabout a
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   422
  a is a plain file with content:
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30162
diff changeset
   423
  <<<<<<< working copy: 2e60aa20b912 - test: 1
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   424
  1
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   425
  =======
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   426
  2
30160
008c4ce64e3f tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30062
diff changeset
   427
  >>>>>>> merge rev:    0c617753b41b - test: 2
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   428
  $ tellmeabout b
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   429
  b is an executable file with content:
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30162
diff changeset
   430
  <<<<<<< working copy: 2e60aa20b912 - test: 1
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   431
  1
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   432
  =======
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   433
  2
30160
008c4ce64e3f tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 30062
diff changeset
   434
  >>>>>>> merge rev:    0c617753b41b - test: 2
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   435
  $ tellmeabout c
20897
0b50788c160c merge: use ancestor filename from planning phase instead of filectx ancestor
Mads Kiilerich <madski@unity3d.com>
parents: 18605
diff changeset
   436
  c is an executable file with content:
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   437
  x
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   438
  $ tellmeabout d
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   439
  d is an executable file with content:
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   440
  1
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   441
  $ tellmeabout e
18338
384df4db6520 merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents: 18337
diff changeset
   442
  e is an executable file with content:
18337
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   443
  x (no-eol)
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   444
  $ tellmeabout f
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   445
  f is a plain file with content:
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   446
  1
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   447
  $ tellmeabout g
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   448
  g is a plain file with content:
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   449
  x (no-eol)
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   450
  $ tellmeabout h
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   451
  h is a symlink:
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   452
  h -> 1
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   453
557c8522aec0 tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents: 18334
diff changeset
   454
  $ cd ..