tests/test-merge-local.t
author Adrian Buehlmann <adrian@cadifra.com>
Tue, 23 Nov 2010 22:53:47 +0100
branchstable
changeset 13038 670f4e98276d
parent 12316 4134686b83e1
child 15501 2371f4aea665
permissions -rw-r--r--
checknlink: return False if .hgtmp file preexists (issue2517) If os_link fails on Windows, errno is always errno.EINVAL, so we can't really say if the testlink could not be created because (a) the FS doesn't support hardlinks or (b) there is a leaked .hgtmp file lying around from a previous crashed run. So let's err on the safe side, keep the code simple and assume we can't detect hardlinks in both cases.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12258
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
     1
  $ hg init
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
     2
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
     3
Revision 0:
3869
ad6f34c83c3d Add instructions how to redo/finish failed merge with local working directory.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
     4
12258
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
     5
  $ echo "unchanged" > unchanged
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
     6
  $ echo "remove me" > remove
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
     7
  $ echo "copy me" > copy
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
     8
  $ echo "move me" > move
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
     9
  $ for i in 1 2 3 4 5 6 7 8 9; do
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    10
  >     echo "merge ok $i" >> zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    11
  > done
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    12
  $ echo "merge bad" > zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    13
  $ hg ci -Am "revision 0"
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    14
  adding copy
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    15
  adding move
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    16
  adding remove
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    17
  adding unchanged
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    18
  adding zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    19
  adding zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    20
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    21
Revision 1:
3869
ad6f34c83c3d Add instructions how to redo/finish failed merge with local working directory.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
    22
12258
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    23
  $ hg rm remove
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    24
  $ hg mv move moved
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    25
  $ hg cp copy copied
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    26
  $ echo "added" > added
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    27
  $ hg add added
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    28
  $ echo "new first line" > zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    29
  $ hg cat zzz1_merge_ok >> zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    30
  $ echo "new last line" >> zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    31
  $ hg ci -m "revision 1"
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    32
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    33
Local changes to revision 0:
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    34
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    35
  $ hg co 0
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    36
  4 files updated, 0 files merged, 3 files removed, 0 files unresolved
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    37
  $ echo "new last line" >> zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    38
  $ echo "another last line" >> zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    39
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    40
  $ hg diff --nodates | grep "^[+-][^<>]"
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    41
  --- a/zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    42
  +++ b/zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    43
  +new last line
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    44
  --- a/zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    45
  +++ b/zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    46
  +another last line
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    47
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    48
  $ hg st
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    49
  M zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    50
  M zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    51
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    52
Local merge with bad merge tool:
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    53
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    54
  $ HGMERGE=false hg co
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    55
  merging zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    56
  merging zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    57
  merging zzz2_merge_bad failed!
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    58
  3 files updated, 1 files merged, 2 files removed, 1 files unresolved
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    59
  use 'hg resolve' to retry unresolved file merges
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12258
diff changeset
    60
  [1]
3869
ad6f34c83c3d Add instructions how to redo/finish failed merge with local working directory.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
    61
12258
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    62
  $ hg co 0
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    63
  merging zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    64
  merging zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    65
  warning: conflicts during merge.
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    66
  merging zzz2_merge_bad failed!
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    67
  2 files updated, 1 files merged, 3 files removed, 1 files unresolved
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    68
  use 'hg resolve' to retry unresolved file merges
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12258
diff changeset
    69
  [1]
3869
ad6f34c83c3d Add instructions how to redo/finish failed merge with local working directory.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
    70
12258
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    71
  $ hg diff --nodates | grep "^[+-][^<>]"
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    72
  --- a/zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    73
  +++ b/zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    74
  +new last line
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    75
  --- a/zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    76
  +++ b/zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    77
  +another last line
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    78
  +=======
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    79
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    80
  $ hg st
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    81
  M zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    82
  M zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    83
  ? zzz2_merge_bad.orig
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    84
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    85
Local merge with conflicts:
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    86
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    87
  $ hg co
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    88
  merging zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    89
  merging zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    90
  warning: conflicts during merge.
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    91
  merging zzz2_merge_bad failed!
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    92
  3 files updated, 1 files merged, 2 files removed, 1 files unresolved
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    93
  use 'hg resolve' to retry unresolved file merges
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12258
diff changeset
    94
  [1]
3869
ad6f34c83c3d Add instructions how to redo/finish failed merge with local working directory.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
    95
12258
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    96
  $ hg co 0
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    97
  merging zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    98
  merging zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
    99
  warning: conflicts during merge.
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   100
  merging zzz2_merge_bad failed!
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   101
  2 files updated, 1 files merged, 3 files removed, 1 files unresolved
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   102
  use 'hg resolve' to retry unresolved file merges
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12258
diff changeset
   103
  [1]
12258
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   104
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   105
  $ hg diff --nodates | grep "^[+-][^<>]"
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   106
  --- a/zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   107
  +++ b/zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   108
  +new last line
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   109
  --- a/zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   110
  +++ b/zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   111
  +another last line
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   112
  +=======
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   113
  +=======
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   114
  +new last line
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   115
  +=======
3869
ad6f34c83c3d Add instructions how to redo/finish failed merge with local working directory.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
   116
12258
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   117
  $ hg st
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   118
  M zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   119
  M zzz2_merge_bad
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   120
  ? zzz2_merge_bad.orig
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   121
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   122
Local merge without conflicts:
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   123
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   124
  $ hg revert zzz2_merge_bad
3869
ad6f34c83c3d Add instructions how to redo/finish failed merge with local working directory.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
   125
12258
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   126
  $ hg co
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   127
  merging zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   128
  4 files updated, 1 files merged, 2 files removed, 0 files unresolved
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   129
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   130
  $ hg diff --nodates | grep "^[+-][^<>]"
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   131
  --- a/zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   132
  +++ b/zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   133
  +new last line
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   134
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   135
  $ hg st
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   136
  M zzz1_merge_ok
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   137
  ? zzz2_merge_bad.orig
98ec977aa61e tests: unify test-merge-local
Adrian Buehlmann <adrian@cadifra.com>
parents: 12156
diff changeset
   138