tests/test-resolve.t
author Martin von Zweigbergk <martinvonz@google.com>
Mon, 15 Apr 2019 15:28:41 -0700
changeset 42152 344066b54a7b
parent 41511 72a9aacff645
child 42565 4764e8436b2a
permissions -rw-r--r--
tests: delete unused function in test-rename-merge2.t Differential Revision: https://phab.mercurial-scm.org/D6253
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
     1
test that a commit clears the merge state.
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
     2
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
     3
  $ hg init repo
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
     4
  $ cd repo
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
     5
23021
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
     6
  $ echo foo > file1
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
     7
  $ echo foo > file2
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
     8
  $ hg commit -Am 'add files'
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
     9
  adding file1
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
    10
  adding file2
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
    11
23021
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
    12
  $ echo bar >> file1
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
    13
  $ echo bar >> file2
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
    14
  $ hg commit -Am 'append bar to files'
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
    15
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
    16
create a second head with conflicting edits
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
    17
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
    18
  $ hg up -C 0
23021
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
    19
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
    20
  $ echo baz >> file1
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
    21
  $ echo baz >> file2
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
    22
  $ hg commit -Am 'append baz to files'
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
    23
  created new head
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
    24
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
    25
create a third head with no conflicting edits
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
    26
  $ hg up -qC 0
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
    27
  $ echo foo > file3
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
    28
  $ hg commit -Am 'add non-conflicting file'
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
    29
  adding file3
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
    30
  created new head
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
    31
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
    32
failing merge
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
    33
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
    34
  $ hg up -qC 2
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
    35
  $ hg merge --tool=internal:fail 1
23021
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
    36
  0 files updated, 0 files merged, 0 files removed, 2 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 35393
diff changeset
    37
  use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12314
diff changeset
    38
  [1]
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
    39
23021
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
    40
resolve -l should contain unresolved entries
21263
f3e37409ecd3 resolve: split test
Gregory Szorc <gregory.szorc@gmail.com>
parents: 16913
diff changeset
    41
f3e37409ecd3 resolve: split test
Gregory Szorc <gregory.szorc@gmail.com>
parents: 16913
diff changeset
    42
  $ hg resolve -l
23021
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
    43
  U file1
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
    44
  U file2
21263
f3e37409ecd3 resolve: split test
Gregory Szorc <gregory.szorc@gmail.com>
parents: 16913
diff changeset
    45
24127
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
    46
  $ hg resolve -l --no-status
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
    47
  file1
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
    48
  file2
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
    49
24125
18af6ebd4001 resolve: silence warning of unknown pats for -l/--list (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 23025
diff changeset
    50
resolving an unknown path should emit a warning, but not for -l
23020
dfad19274d85 test-resolve: clarify test descriptions and consistently use "should"
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 21947
diff changeset
    51
21265
232de244ab6f resolve: print warning when no work performed (issue4208)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21264
diff changeset
    52
  $ hg resolve -m does-not-exist
21721
6539c4e9c874 resolve: fix grammar of no matching files message
Matt Mackall <mpm@selenic.com>
parents: 21541
diff changeset
    53
  arguments do not match paths that need resolving
24125
18af6ebd4001 resolve: silence warning of unknown pats for -l/--list (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 23025
diff changeset
    54
  $ hg resolve -l does-not-exist
21265
232de244ab6f resolve: print warning when no work performed (issue4208)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21264
diff changeset
    55
28402
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    56
tell users how they could have used resolve
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    57
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    58
  $ mkdir nested
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    59
  $ cd nested
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    60
  $ hg resolve -m file1
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    61
  arguments do not match paths that need resolving
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    62
  (try: hg resolve -m path:file1)
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    63
  $ hg resolve -m file1 filez
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    64
  arguments do not match paths that need resolving
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    65
  (try: hg resolve -m path:file1 path:filez)
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    66
  $ hg resolve -m path:file1 path:filez
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    67
  $ hg resolve -l
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    68
  R file1
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    69
  U file2
41511
72a9aacff645 resolve: respect ui.relative-paths
Martin von Zweigbergk <martinvonz@google.com>
parents: 41281
diff changeset
    70
  $ hg resolve -l --config ui.relative-paths=yes
72a9aacff645 resolve: respect ui.relative-paths
Martin von Zweigbergk <martinvonz@google.com>
parents: 41281
diff changeset
    71
  R ../file1
72a9aacff645 resolve: respect ui.relative-paths
Martin von Zweigbergk <martinvonz@google.com>
parents: 41281
diff changeset
    72
  U ../file2
39400
213c0493cea0 resolve: test that we suggest a valid hg command
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39393
diff changeset
    73
  $ hg resolve --re-merge filez file2
213c0493cea0 resolve: test that we suggest a valid hg command
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39393
diff changeset
    74
  arguments do not match paths that need resolving
213c0493cea0 resolve: test that we suggest a valid hg command
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39393
diff changeset
    75
  (try: hg resolve --re-merge path:filez path:file2)
28402
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    76
  $ hg resolve -m filez file2
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    77
  arguments do not match paths that need resolving
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    78
  (try: hg resolve -m path:filez path:file2)
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    79
  $ hg resolve -m path:filez path:file2
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    80
  (no more unresolved files)
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    81
  $ hg resolve -l
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    82
  R file1
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    83
  R file2
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    84
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    85
cleanup
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    86
  $ hg resolve -u
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    87
  $ cd ..
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    88
  $ rmdir nested
7f77e71e5d7e resolve: when pats do not match, hint about path:
timeless <timeless@mozdev.org>
parents: 28011
diff changeset
    89
26784
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
    90
don't allow marking or unmarking driver-resolved files
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
    91
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
    92
  $ cat > $TESTTMP/markdriver.py << EOF
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
    93
  > '''mark and unmark files as driver-resolved'''
36645
7bc33d677c0c tests: fix various test-check-module-imports.t violations
Augie Fackler <augie@google.com>
parents: 36481
diff changeset
    94
  > from mercurial import (
7bc33d677c0c tests: fix various test-check-module-imports.t violations
Augie Fackler <augie@google.com>
parents: 36481
diff changeset
    95
  >    merge,
7bc33d677c0c tests: fix various test-check-module-imports.t violations
Augie Fackler <augie@google.com>
parents: 36481
diff changeset
    96
  >    pycompat,
7bc33d677c0c tests: fix various test-check-module-imports.t violations
Augie Fackler <augie@google.com>
parents: 36481
diff changeset
    97
  >    registrar,
7bc33d677c0c tests: fix various test-check-module-imports.t violations
Augie Fackler <augie@google.com>
parents: 36481
diff changeset
    98
  >    scmutil,
7bc33d677c0c tests: fix various test-check-module-imports.t violations
Augie Fackler <augie@google.com>
parents: 36481
diff changeset
    99
  > )
26784
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   100
  > cmdtable = {}
32337
46ba2cdda476 registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents: 30062
diff changeset
   101
  > command = registrar.command(cmdtable)
33097
fce4ed2912bb py3: make sure commands name are bytes in tests
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32337
diff changeset
   102
  > @command(b'markdriver',
36481
9660e629352b py3: port the markdirver extension in tests/test-resolve.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 35704
diff changeset
   103
  >   [(b'u', b'unmark', None, b'')],
9660e629352b py3: port the markdirver extension in tests/test-resolve.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 35704
diff changeset
   104
  >   b'FILE...')
26784
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   105
  > def markdriver(ui, repo, *pats, **opts):
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   106
  >     wlock = repo.wlock()
36481
9660e629352b py3: port the markdirver extension in tests/test-resolve.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 35704
diff changeset
   107
  >     opts = pycompat.byteskwargs(opts)
26784
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   108
  >     try:
26997
1791f9aa782f test-resolve.t: switch to mergestate.read()
Siddharth Agarwal <sid0@fb.com>
parents: 26969
diff changeset
   109
  >         ms = merge.mergestate.read(repo)
26784
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   110
  >         m = scmutil.match(repo[None], pats, opts)
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   111
  >         for f in ms:
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   112
  >             if not m(f):
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   113
  >                 continue
36481
9660e629352b py3: port the markdirver extension in tests/test-resolve.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 35704
diff changeset
   114
  >             if not opts[b'unmark']:
9660e629352b py3: port the markdirver extension in tests/test-resolve.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 35704
diff changeset
   115
  >                 ms.mark(f, b'd')
26784
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   116
  >             else:
36481
9660e629352b py3: port the markdirver extension in tests/test-resolve.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 35704
diff changeset
   117
  >                 ms.mark(f, b'u')
26784
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   118
  >         ms.commit()
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   119
  >     finally:
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   120
  >         wlock.release()
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   121
  > EOF
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   122
  $ hg --config extensions.markdriver=$TESTTMP/markdriver.py markdriver file1
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   123
  $ hg resolve --list
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   124
  D file1
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   125
  U file2
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   126
  $ hg resolve --mark file1
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   127
  not marking file1 as it is driver-resolved
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   128
this should not print out file1
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   129
  $ hg resolve --mark --all
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   130
  (no more unresolved files -- run "hg resolve --all" to conclude)
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   131
  $ hg resolve --mark 'glob:file*'
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   132
  (no more unresolved files -- run "hg resolve --all" to conclude)
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   133
  $ hg resolve --list
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   134
  D file1
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   135
  R file2
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   136
  $ hg resolve --unmark file1
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   137
  not unmarking file1 as it is driver-resolved
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   138
  (no more unresolved files -- run "hg resolve --all" to conclude)
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   139
  $ hg resolve --unmark --all
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   140
  $ hg resolve --list
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   141
  D file1
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   142
  U file2
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   143
  $ hg --config extensions.markdriver=$TESTTMP/markdriver.py markdriver --unmark file1
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   144
  $ hg resolve --list
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   145
  U file1
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   146
  U file2
c0aab5961876 commands.resolve: don't allow users to mark or unmark driver-resolved files
Siddharth Agarwal <sid0@fb.com>
parents: 26621
diff changeset
   147
21263
f3e37409ecd3 resolve: split test
Gregory Szorc <gregory.szorc@gmail.com>
parents: 16913
diff changeset
   148
resolve the failure
f3e37409ecd3 resolve: split test
Gregory Szorc <gregory.szorc@gmail.com>
parents: 16913
diff changeset
   149
23021
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
   150
  $ echo resolved > file1
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
   151
  $ hg resolve -m file1
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
   152
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
   153
resolve -l should show resolved file as resolved
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
   154
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
   155
  $ hg resolve -l
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
   156
  R file1
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
   157
  U file2
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
   158
24127
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
   159
  $ hg resolve -l -Tjson
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
   160
  [
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
   161
   {
39928
f07ab9ddc0c0 resolve: rename {status} to {mergestatus} to not shadow change status (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 39400
diff changeset
   162
    "mergestatus": "R",
f07ab9ddc0c0 resolve: rename {status} to {mergestatus} to not shadow change status (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 39400
diff changeset
   163
    "path": "file1"
24127
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
   164
   },
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
   165
   {
39928
f07ab9ddc0c0 resolve: rename {status} to {mergestatus} to not shadow change status (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 39400
diff changeset
   166
    "mergestatus": "U",
f07ab9ddc0c0 resolve: rename {status} to {mergestatus} to not shadow change status (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 39400
diff changeset
   167
    "path": "file2"
24127
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
   168
   }
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
   169
  ]
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
   170
39928
f07ab9ddc0c0 resolve: rename {status} to {mergestatus} to not shadow change status (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 39400
diff changeset
   171
  $ hg resolve -l -T '{path} {mergestatus} {status} {p1rev} {p2rev}\n'
f07ab9ddc0c0 resolve: rename {status} to {mergestatus} to not shadow change status (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 39400
diff changeset
   172
  file1 R M 2 1
f07ab9ddc0c0 resolve: rename {status} to {mergestatus} to not shadow change status (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 39400
diff changeset
   173
  file2 U M 2 1
38544
e8c33e27ee9b resolve: add support for log-like template keywords and functions
Yuya Nishihara <yuya@tcha.org>
parents: 36645
diff changeset
   174
23021
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
   175
resolve -m without paths should mark all resolved
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
   176
41770cee3c6a test-resolve: add test resolving one of two files
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23020
diff changeset
   177
  $ hg resolve -m
21947
b081decd9062 resolve: add parenthesis around "no more unresolved files" message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21721
diff changeset
   178
  (no more unresolved files)
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
   179
  $ hg commit -m 'resolved'
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
   180
23020
dfad19274d85 test-resolve: clarify test descriptions and consistently use "should"
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 21947
diff changeset
   181
resolve -l should be empty after commit
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
   182
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
   183
  $ hg resolve -l
21541
6062593d8b06 resolve: don't abort resolve -l even when no merge is in progress
Siddharth Agarwal <sid0@fb.com>
parents: 21267
diff changeset
   184
24127
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
   185
  $ hg resolve -l -Tjson
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
   186
  [
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
   187
  ]
4cb8002658d6 resolve: port to generic templater
Yuya Nishihara <yuya@tcha.org>
parents: 24125
diff changeset
   188
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   189
resolve --all should abort when no merge in progress
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   190
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   191
  $ hg resolve --all
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   192
  abort: resolve command not applicable when not merging
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   193
  [255]
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   194
23020
dfad19274d85 test-resolve: clarify test descriptions and consistently use "should"
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 21947
diff changeset
   195
resolve -m should abort when no merge in progress
dfad19274d85 test-resolve: clarify test descriptions and consistently use "should"
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 21947
diff changeset
   196
21541
6062593d8b06 resolve: don't abort resolve -l even when no merge is in progress
Siddharth Agarwal <sid0@fb.com>
parents: 21267
diff changeset
   197
  $ hg resolve -m
21264
4e932dc5c113 resolve: abort when not applicable (BC)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21263
diff changeset
   198
  abort: resolve command not applicable when not merging
4e932dc5c113 resolve: abort when not applicable (BC)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 21263
diff changeset
   199
  [255]
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
   200
27316
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   201
can not update or merge when there are unresolved conflicts
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   202
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   203
  $ hg up -qC 0
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   204
  $ echo quux >> file1
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   205
  $ hg up 1
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   206
  merging file1
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   207
  warning: conflicts while merging file1! (edit, then use 'hg resolve --mark')
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   208
  1 files updated, 0 files merged, 0 files removed, 1 files unresolved
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   209
  use 'hg resolve' to retry unresolved file merges
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   210
  [1]
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   211
  $ hg up 0
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   212
  abort: outstanding merge conflicts
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   213
  [255]
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   214
  $ hg merge 2
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   215
  abort: outstanding merge conflicts
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   216
  [255]
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   217
  $ hg merge --force 2
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   218
  abort: outstanding merge conflicts
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   219
  [255]
777f668eca70 merge: refuse update/merge if there are unresolved conflicts (BC)
Martin von Zweigbergk <martinvonz@google.com>
parents: 27067
diff changeset
   220
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   221
set up conflict-free merge
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   222
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   223
  $ hg up -qC 3
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   224
  $ hg merge 1
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   225
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   226
  (branch merge, don't forget to commit)
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   227
23024
ec36969497de resolve: run happily after conflict-free merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23023
diff changeset
   228
resolve --all should do nothing in merge without conflicts
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   229
  $ hg resolve --all
23024
ec36969497de resolve: run happily after conflict-free merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23023
diff changeset
   230
  (no more unresolved files)
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   231
23024
ec36969497de resolve: run happily after conflict-free merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23023
diff changeset
   232
resolve -m should do nothing in merge without conflicts
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   233
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   234
  $ hg resolve -m
23024
ec36969497de resolve: run happily after conflict-free merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23023
diff changeset
   235
  (no more unresolved files)
23022
ace380a0619b test-resolve: add more tests for in conflict-free states
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23021
diff changeset
   236
23023
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   237
get back to conflicting state
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   238
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   239
  $ hg up -qC 2
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   240
  $ hg merge --tool=internal:fail 1
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   241
  0 files updated, 0 files merged, 0 files removed, 2 files unresolved
35704
41ef02ba329b merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents: 35393
diff changeset
   242
  use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
23023
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   243
  [1]
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   244
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   245
resolve without arguments should suggest --all
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   246
  $ hg resolve
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   247
  abort: no files or directories specified
26352
e635bc9bb7d9 resolve: consistently describe re-merge + unresolved
timeless@mozdev.org
parents: 24127
diff changeset
   248
  (use --all to re-merge all unresolved files)
23023
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   249
  [255]
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   250
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   251
resolve --all should re-merge all unresolved files
26619
3b213a904b98 test-resolve.t: add some output to show order of operations
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
   252
  $ hg resolve --all
3b213a904b98 test-resolve.t: add some output to show order of operations
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
   253
  merging file1
26621
36383507a6f8 resolve: perform all premerges before performing any file merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 26620
diff changeset
   254
  merging file2
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26352
diff changeset
   255
  warning: conflicts while merging file1! (edit, then use 'hg resolve --mark')
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26352
diff changeset
   256
  warning: conflicts while merging file2! (edit, then use 'hg resolve --mark')
23023
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   257
  [1]
26620
7955127efbcb test-resolve.t: add some tests for .orig file contents
Siddharth Agarwal <sid0@fb.com>
parents: 26619
diff changeset
   258
  $ cat file1.orig
7955127efbcb test-resolve.t: add some tests for .orig file contents
Siddharth Agarwal <sid0@fb.com>
parents: 26619
diff changeset
   259
  foo
7955127efbcb test-resolve.t: add some tests for .orig file contents
Siddharth Agarwal <sid0@fb.com>
parents: 26619
diff changeset
   260
  baz
7955127efbcb test-resolve.t: add some tests for .orig file contents
Siddharth Agarwal <sid0@fb.com>
parents: 26619
diff changeset
   261
  $ cat file2.orig
7955127efbcb test-resolve.t: add some tests for .orig file contents
Siddharth Agarwal <sid0@fb.com>
parents: 26619
diff changeset
   262
  foo
7955127efbcb test-resolve.t: add some tests for .orig file contents
Siddharth Agarwal <sid0@fb.com>
parents: 26619
diff changeset
   263
  baz
26939
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
   264
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
   265
.orig files should exists where specified
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
   266
  $ hg resolve --all --verbose --config 'ui.origbackuppath=.hg/origbackups'
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
   267
  merging file1
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34146
diff changeset
   268
  creating directory: $TESTTMP/repo/.hg/origbackups
26939
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
   269
  merging file2
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
   270
  warning: conflicts while merging file1! (edit, then use 'hg resolve --mark')
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
   271
  warning: conflicts while merging file2! (edit, then use 'hg resolve --mark')
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
   272
  [1]
50d2389a2e49 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com>
parents: 26784
diff changeset
   273
  $ ls .hg/origbackups
34146
9e4f82bc2b0b scmutil: don't append .orig to backups in origbackuppath (BC)
Mark Thomas <mbthomas@fb.com>
parents: 33097
diff changeset
   274
  file1
9e4f82bc2b0b scmutil: don't append .orig to backups in origbackuppath (BC)
Mark Thomas <mbthomas@fb.com>
parents: 33097
diff changeset
   275
  file2
23025
b8dd8432395d test-resolve.t: use redirection to /dev/null instead of grep -q
Augie Fackler <raf@durin42.com>
parents: 23024
diff changeset
   276
  $ grep '<<<' file1 > /dev/null
b8dd8432395d test-resolve.t: use redirection to /dev/null instead of grep -q
Augie Fackler <raf@durin42.com>
parents: 23024
diff changeset
   277
  $ grep '<<<' file2 > /dev/null
23023
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   278
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   279
resolve <file> should re-merge file
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   280
  $ echo resolved > file1
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   281
  $ hg resolve -q file1
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26352
diff changeset
   282
  warning: conflicts while merging file1! (edit, then use 'hg resolve --mark')
23023
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   283
  [1]
23025
b8dd8432395d test-resolve.t: use redirection to /dev/null instead of grep -q
Augie Fackler <raf@durin42.com>
parents: 23024
diff changeset
   284
  $ grep '<<<' file1 > /dev/null
23023
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   285
26959
ed5f20f9c22e resolve: restore .orig only after merge is fully complete (issue4952)
Siddharth Agarwal <sid0@fb.com>
parents: 26784
diff changeset
   286
test .orig behavior with resolve
ed5f20f9c22e resolve: restore .orig only after merge is fully complete (issue4952)
Siddharth Agarwal <sid0@fb.com>
parents: 26784
diff changeset
   287
27067
19b52cde2b84 test-resolve: fix '--tool f' invocation for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 27027
diff changeset
   288
  $ hg resolve -q file1 --tool "sh -c 'f --dump \"$TESTTMP/repo/file1.orig\"'"
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34146
diff changeset
   289
  $TESTTMP/repo/file1.orig:
26959
ed5f20f9c22e resolve: restore .orig only after merge is fully complete (issue4952)
Siddharth Agarwal <sid0@fb.com>
parents: 26784
diff changeset
   290
  >>>
ed5f20f9c22e resolve: restore .orig only after merge is fully complete (issue4952)
Siddharth Agarwal <sid0@fb.com>
parents: 26784
diff changeset
   291
  foo
ed5f20f9c22e resolve: restore .orig only after merge is fully complete (issue4952)
Siddharth Agarwal <sid0@fb.com>
parents: 26784
diff changeset
   292
  baz
ed5f20f9c22e resolve: restore .orig only after merge is fully complete (issue4952)
Siddharth Agarwal <sid0@fb.com>
parents: 26784
diff changeset
   293
  <<<
ed5f20f9c22e resolve: restore .orig only after merge is fully complete (issue4952)
Siddharth Agarwal <sid0@fb.com>
parents: 26784
diff changeset
   294
23023
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   295
resolve <file> should do nothing if 'file' was marked resolved
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   296
  $ echo resolved > file1
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   297
  $ hg resolve -m file1
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   298
  $ hg resolve -q file1
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   299
  $ cat file1
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   300
  resolved
63c9088bebad test-resolve: add tests for re-merge
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 23022
diff changeset
   301
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   302
insert unsupported advisory merge record
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   303
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   304
  $ hg --config extensions.fakemergerecord=$TESTDIR/fakemergerecord.py fakemergerecord -x
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   305
  $ hg debugmergestate
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   306
  * version 2 records
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   307
  local: 57653b9f834a4493f7240b0681efcb9ae7cab745
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   308
  other: dc77451844e37f03f5c559e3b8529b2b48d381d1
30062
940c05b25b07 merge: add conflict labels to merge command
Simon Farnsworth <simonfar@fb.com>
parents: 28641
diff changeset
   309
  labels:
940c05b25b07 merge: add conflict labels to merge command
Simon Farnsworth <simonfar@fb.com>
parents: 28641
diff changeset
   310
    local: working copy
940c05b25b07 merge: add conflict labels to merge command
Simon Farnsworth <simonfar@fb.com>
parents: 28641
diff changeset
   311
    other: merge rev
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   312
  unrecognized entry: x	advisory record
28011
8abd9f785030 merge: add file ancestor linknode to mergestate
Durham Goode <durham@fb.com>
parents: 27316
diff changeset
   313
  file extras: file1 (ancestorlinknode = 99726c03216e233810a2564cbc0adfe395007eac)
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   314
  file: file1 (record type "F", state "r", hash 60b27f004e454aca81b0480209cce5081ec52390)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   315
    local path: file1 (flags "")
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   316
    ancestor path: file1 (node 2ed2a3912a0b24502043eae84ee4b279c18b90dd)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   317
    other path: file1 (node 6f4310b00b9a147241b071a60c28a650827fb03d)
28011
8abd9f785030 merge: add file ancestor linknode to mergestate
Durham Goode <durham@fb.com>
parents: 27316
diff changeset
   318
  file extras: file2 (ancestorlinknode = 99726c03216e233810a2564cbc0adfe395007eac)
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   319
  file: file2 (record type "F", state "u", hash cb99b709a1978bd205ab9dfd4c5aaa1fc91c7523)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   320
    local path: file2 (flags "")
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   321
    ancestor path: file2 (node 2ed2a3912a0b24502043eae84ee4b279c18b90dd)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   322
    other path: file2 (node 6f4310b00b9a147241b071a60c28a650827fb03d)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   323
  $ hg resolve -l
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   324
  R file1
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   325
  U file2
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   326
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   327
insert unsupported mandatory merge record
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   328
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   329
  $ hg --config extensions.fakemergerecord=$TESTDIR/fakemergerecord.py fakemergerecord -X
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   330
  $ hg debugmergestate
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   331
  * version 2 records
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   332
  local: 57653b9f834a4493f7240b0681efcb9ae7cab745
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   333
  other: dc77451844e37f03f5c559e3b8529b2b48d381d1
30062
940c05b25b07 merge: add conflict labels to merge command
Simon Farnsworth <simonfar@fb.com>
parents: 28641
diff changeset
   334
  labels:
940c05b25b07 merge: add conflict labels to merge command
Simon Farnsworth <simonfar@fb.com>
parents: 28641
diff changeset
   335
    local: working copy
940c05b25b07 merge: add conflict labels to merge command
Simon Farnsworth <simonfar@fb.com>
parents: 28641
diff changeset
   336
    other: merge rev
28011
8abd9f785030 merge: add file ancestor linknode to mergestate
Durham Goode <durham@fb.com>
parents: 27316
diff changeset
   337
  file extras: file1 (ancestorlinknode = 99726c03216e233810a2564cbc0adfe395007eac)
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   338
  file: file1 (record type "F", state "r", hash 60b27f004e454aca81b0480209cce5081ec52390)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   339
    local path: file1 (flags "")
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   340
    ancestor path: file1 (node 2ed2a3912a0b24502043eae84ee4b279c18b90dd)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   341
    other path: file1 (node 6f4310b00b9a147241b071a60c28a650827fb03d)
28011
8abd9f785030 merge: add file ancestor linknode to mergestate
Durham Goode <durham@fb.com>
parents: 27316
diff changeset
   342
  file extras: file2 (ancestorlinknode = 99726c03216e233810a2564cbc0adfe395007eac)
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   343
  file: file2 (record type "F", state "u", hash cb99b709a1978bd205ab9dfd4c5aaa1fc91c7523)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   344
    local path: file2 (flags "")
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   345
    ancestor path: file2 (node 2ed2a3912a0b24502043eae84ee4b279c18b90dd)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   346
    other path: file2 (node 6f4310b00b9a147241b071a60c28a650827fb03d)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   347
  unrecognized entry: X	mandatory record
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   348
  $ hg resolve -l
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   349
  abort: unsupported merge state records: X
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   350
  (see https://mercurial-scm.org/wiki/MergeStateRecords for more information)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   351
  [255]
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   352
  $ hg resolve -ma
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   353
  abort: unsupported merge state records: X
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   354
  (see https://mercurial-scm.org/wiki/MergeStateRecords for more information)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   355
  [255]
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   356
  $ hg summary
28641
4acd5651ffa2 summary: move mergemod before parents to give access to ms
timeless <timeless@mozdev.org>
parents: 28402
diff changeset
   357
  warning: merge state has unsupported record types: X
27027
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   358
  parent: 2:57653b9f834a 
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   359
   append baz to files
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   360
  parent: 1:dc77451844e3 
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   361
   append bar to files
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   362
  branch: default
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   363
  commit: 2 modified, 2 unknown (merge)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   364
  update: 2 new changesets (update)
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   365
  phases: 5 draft
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   366
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   367
update --clean shouldn't abort on unsupported records
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   368
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   369
  $ hg up -qC 1
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   370
  $ hg debugmergestate
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   371
  no merge state found
a01ecbcfaf84 mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents: 27026
diff changeset
   372
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
   373
test crashed merge with empty mergestate
7734
9f73bddb9d0b reset mergestate after commit
Martin Geisler <mg@daimi.au.dk>
parents:
diff changeset
   374
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
   375
  $ mkdir .hg/merge
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
   376
  $ touch .hg/merge/state
11451
51021f4c80b5 resolve: do not crash on empty mergestate
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   377
23020
dfad19274d85 test-resolve: clarify test descriptions and consistently use "should"
Martin von Zweigbergk <martinvonz@gmail.com>
parents: 21947
diff changeset
   378
resolve -l should be empty
12117
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
   379
a40372c1c731 tests: unify test-resolve
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11451
diff changeset
   380
  $ hg resolve -l
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12788
diff changeset
   381
38793
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   382
resolve -m can be configured to look for remaining conflict markers
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   383
  $ hg up -qC 2
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   384
  $ hg merge -q --tool=internal:merge 1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   385
  warning: conflicts while merging file1! (edit, then use 'hg resolve --mark')
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   386
  warning: conflicts while merging file2! (edit, then use 'hg resolve --mark')
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   387
  [1]
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   388
  $ hg resolve -l
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   389
  U file1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   390
  U file2
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   391
  $ echo 'remove markers' > file1
38857
96d0795bd0bd resolve: graduate resolve.mark-check from experimental, add docs
Kyle Lippincott <spectral@google.com>
parents: 38822
diff changeset
   392
  $ hg --config commands.resolve.mark-check=abort resolve -m
38793
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   393
  warning: the following files still have conflict markers:
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   394
    file2
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   395
  abort: conflict markers detected
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   396
  (use --all to mark anyway)
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   397
  [255]
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   398
  $ hg resolve -l
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   399
  U file1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   400
  U file2
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   401
Try with --all from the hint
38857
96d0795bd0bd resolve: graduate resolve.mark-check from experimental, add docs
Kyle Lippincott <spectral@google.com>
parents: 38822
diff changeset
   402
  $ hg --config commands.resolve.mark-check=abort resolve -m --all
38793
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   403
  warning: the following files still have conflict markers:
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   404
    file2
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   405
  (no more unresolved files)
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   406
  $ hg resolve -l
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   407
  R file1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   408
  R file2
38873
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   409
Test option value 'warn'
38793
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   410
  $ hg resolve --unmark
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   411
  $ hg resolve -l
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   412
  U file1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   413
  U file2
38857
96d0795bd0bd resolve: graduate resolve.mark-check from experimental, add docs
Kyle Lippincott <spectral@google.com>
parents: 38822
diff changeset
   414
  $ hg --config commands.resolve.mark-check=warn resolve -m
38793
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   415
  warning: the following files still have conflict markers:
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   416
    file2
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   417
  (no more unresolved files)
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   418
  $ hg resolve -l
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   419
  R file1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   420
  R file2
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   421
If the file is already marked as resolved, we don't warn about it
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   422
  $ hg resolve --unmark file1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   423
  $ hg resolve -l
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   424
  U file1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   425
  R file2
38857
96d0795bd0bd resolve: graduate resolve.mark-check from experimental, add docs
Kyle Lippincott <spectral@google.com>
parents: 38822
diff changeset
   426
  $ hg --config commands.resolve.mark-check=warn resolve -m
38793
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   427
  (no more unresolved files)
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   428
  $ hg resolve -l
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   429
  R file1
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   430
  R file2
38873
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   431
If the user passes an invalid value, we treat it as 'none'.
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   432
  $ hg resolve --unmark
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   433
  $ hg resolve -l
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   434
  U file1
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   435
  U file2
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   436
  $ hg --config commands.resolve.mark-check=nope resolve -m
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   437
  (no more unresolved files)
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   438
  $ hg resolve -l
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   439
  R file1
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   440
  R file2
40567
8785d66edd6e tests: fix a couple typos in test-resolve.t comments and add a comment
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   441
Test explicitly setting the option to 'none'
38873
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   442
  $ hg resolve --unmark
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   443
  $ hg resolve -l
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   444
  U file1
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   445
  U file2
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   446
  $ hg --config commands.resolve.mark-check=none resolve -m
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   447
  (no more unresolved files)
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   448
  $ hg resolve -l
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   449
  R file1
7e75777e4a51 resolve: correct behavior of mark-check=none to match docs
Kyle Lippincott <spectral@google.com>
parents: 38859
diff changeset
   450
  R file2
40472
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   451
Test with marking an explicit file as resolved, this should not abort (since
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   452
there's no --force flag, we have no way of combining --all with a filename)
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   453
  $ hg resolve --unmark
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   454
  $ hg resolve -l
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   455
  U file1
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   456
  U file2
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   457
(This downgrades to a warning since an explicit file was specified).
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   458
  $ hg --config commands.resolve.mark-check=abort resolve -m file2
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   459
  warning: the following files still have conflict markers:
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   460
    file2
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   461
  $ hg resolve -l
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   462
  U file1
da2e874fe582 resolve: when resolve.mark-check=abort, downgrade to warning if pats specified
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   463
  R file2
39392
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
   464
Testing the --re-merge flag
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
   465
  $ hg resolve --unmark file1
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
   466
  $ hg resolve -l
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
   467
  U file1
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
   468
  R file2
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
   469
  $ hg resolve --mark --re-merge
39393
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
   470
  abort: too many actions specified
39392
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
   471
  [255]
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
   472
  $ hg resolve --re-merge --all
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
   473
  merging file1
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
   474
  warning: conflicts while merging file1! (edit, then use 'hg resolve --mark')
5d00e6061ba2 resolve: add a flag for the default behavior of re-merging
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 38874
diff changeset
   475
  [1]
39393
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
   476
Explicit re-merge
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
   477
  $ hg resolve --unmark file1
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
   478
  $ hg resolve --config commands.resolve.explicit-re-merge=1 --all
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
   479
  abort: no action specified
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
   480
  (use --mark, --unmark, --list or --re-merge)
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
   481
  [255]
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
   482
  $ hg resolve --config commands.resolve.explicit-re-merge=1 --re-merge --all
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
   483
  merging file1
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
   484
  warning: conflicts while merging file1! (edit, then use 'hg resolve --mark')
56469d475341 resolve: add config to make hg resolve not re-merge by default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39392
diff changeset
   485
  [1]
38793
6c8e3c847977 resolve: add option to warn/abort on -m with unresolved conflict markers
Kyle Lippincott <spectral@google.com>
parents: 38544
diff changeset
   486
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12788
diff changeset
   487
  $ cd ..
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   488
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   489
======================================================
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   490
Test 'hg resolve' confirm config option functionality |
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   491
======================================================
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   492
  $ cat >> $HGRCPATH << EOF
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   493
  > [extensions]
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   494
  > rebase=
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   495
  > EOF
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   496
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   497
  $ hg init repo2
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   498
  $ cd repo2
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   499
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   500
  $ echo boss > boss
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   501
  $ hg ci -Am "add boss"
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   502
  adding boss
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   503
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   504
  $ for emp in emp1 emp2 emp3; do echo work > $emp; done;
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   505
  $ hg ci -Aqm "added emp1 emp2 emp3"
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   506
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   507
  $ hg up 0
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   508
  0 files updated, 0 files merged, 3 files removed, 0 files unresolved
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   509
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   510
  $ for emp in emp1 emp2 emp3; do echo nowork > $emp; done;
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   511
  $ hg ci -Aqm "added lazy emp1 emp2 emp3"
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   512
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   513
  $ hg log -GT "{rev} {node|short} {firstline(desc)}\n"
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   514
  @  2 0acfd4a49af0 added lazy emp1 emp2 emp3
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   515
  |
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   516
  | o  1 f30f98a8181f added emp1 emp2 emp3
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   517
  |/
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   518
  o  0 88660038d466 add boss
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   519
  
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   520
  $ hg rebase -s 1 -d 2
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   521
  rebasing 1:f30f98a8181f "added emp1 emp2 emp3"
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   522
  merging emp1
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   523
  merging emp2
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   524
  merging emp3
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   525
  warning: conflicts while merging emp1! (edit, then use 'hg resolve --mark')
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   526
  warning: conflicts while merging emp2! (edit, then use 'hg resolve --mark')
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   527
  warning: conflicts while merging emp3! (edit, then use 'hg resolve --mark')
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   528
  unresolved conflicts (see hg resolve, then hg rebase --continue)
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   529
  [1]
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   530
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   531
Test when commands.resolve.confirm config option is not set:
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   532
===========================================================
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   533
  $ hg resolve --all
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   534
  merging emp1
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   535
  merging emp2
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   536
  merging emp3
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   537
  warning: conflicts while merging emp1! (edit, then use 'hg resolve --mark')
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   538
  warning: conflicts while merging emp2! (edit, then use 'hg resolve --mark')
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   539
  warning: conflicts while merging emp3! (edit, then use 'hg resolve --mark')
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   540
  [1]
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   541
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   542
Test when config option is set:
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   543
==============================
40568
b93157f69f46 tests: make the commands.resolve.confirm tests not pollute the test-wide hgrc
Kyle Lippincott <spectral@google.com>
parents: 40567
diff changeset
   544
  $ cat >> .hg/hgrc << EOF
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   545
  > [ui]
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   546
  > interactive = True
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   547
  > [commands]
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   548
  > resolve.confirm = True
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   549
  > EOF
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   550
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   551
  $ hg resolve
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   552
  abort: no files or directories specified
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   553
  (use --all to re-merge all unresolved files)
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   554
  [255]
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   555
  $ hg resolve --all << EOF
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   556
  > n
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   557
  > EOF
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   558
  re-merge all unresolved files (yn)? n
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   559
  abort: user quit
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   560
  [255]
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   561
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   562
  $ hg resolve --all << EOF
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   563
  > y
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   564
  > EOF
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   565
  re-merge all unresolved files (yn)? y
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   566
  merging emp1
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   567
  merging emp2
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   568
  merging emp3
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   569
  warning: conflicts while merging emp1! (edit, then use 'hg resolve --mark')
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   570
  warning: conflicts while merging emp2! (edit, then use 'hg resolve --mark')
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   571
  warning: conflicts while merging emp3! (edit, then use 'hg resolve --mark')
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   572
  [1]
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   573
38859
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   574
Test that commands.resolve.confirm respect --mark option (only when no patterns args are given):
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   575
===============================================================================================
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   576
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   577
  $ hg resolve -m emp1
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   578
  $ hg resolve -l
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   579
  R emp1
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   580
  U emp2
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   581
  U emp3
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   582
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   583
  $ hg resolve -m << EOF
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   584
  > n
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   585
  > EOF
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   586
  mark all unresolved files as resolved (yn)? n
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   587
  abort: user quit
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   588
  [255]
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   589
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   590
  $ hg resolve -m << EOF
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   591
  > y
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   592
  > EOF
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   593
  mark all unresolved files as resolved (yn)? y
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   594
  (no more unresolved files)
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   595
  continue: hg rebase --continue
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   596
  $ hg resolve -l
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   597
  R emp1
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   598
  R emp2
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   599
  R emp3
db03e5cefc82 resolve: support commands.resolve.confirm option with --mark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38857
diff changeset
   600
38874
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   601
Test that commands.resolve.confirm respect --unmark option (only when no patterns args are given):
40567
8785d66edd6e tests: fix a couple typos in test-resolve.t comments and add a comment
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   602
=================================================================================================
38874
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   603
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   604
  $ hg resolve -u emp1
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   605
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   606
  $ hg resolve -l
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   607
  U emp1
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   608
  R emp2
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   609
  R emp3
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   610
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   611
  $ hg resolve -u << EOF
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   612
  > n
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   613
  > EOF
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   614
  mark all resolved files as unresolved (yn)? n
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   615
  abort: user quit
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   616
  [255]
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   617
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   618
  $ hg resolve -m << EOF
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   619
  > y
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   620
  > EOF
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   621
  mark all unresolved files as resolved (yn)? y
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   622
  (no more unresolved files)
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   623
  continue: hg rebase --continue
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   624
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   625
  $ hg resolve -l
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   626
  R emp1
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   627
  R emp2
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   628
  R emp3
f35f6791595f resolve: support confirm config option with --unmark flag
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38873
diff changeset
   629
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   630
  $ hg rebase --abort
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   631
  rebase aborted
40567
8785d66edd6e tests: fix a couple typos in test-resolve.t comments and add a comment
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   632
8785d66edd6e tests: fix a couple typos in test-resolve.t comments and add a comment
Kyle Lippincott <spectral@google.com>
parents: 39928
diff changeset
   633
Done with commands.resolve.confirm tests:
38822
f8732e33bcbc resolve: add confirm config option
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 38793
diff changeset
   634
  $ cd ..
41281
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   635
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   636
Test that commands.resolve.mark-check works even if there are deleted files:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   637
  $ hg init resolve-deleted
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   638
  $ cd resolve-deleted
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   639
  $ echo r0 > file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   640
  $ hg ci -qAm r0
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   641
  $ echo r1 > file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   642
  $ hg ci -qm r1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   643
  $ hg co -qr 0
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   644
  $ hg rm file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   645
  $ hg ci -qm "r2 (delete file1)"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   646
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   647
(At this point we have r0 creating file1, and sibling commits r1 and r2, which
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   648
 modify and delete file1, respectively)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   649
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   650
  $ hg merge -r 1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   651
  file 'file1' was deleted in local [working copy] but was modified in other [merge rev].
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   652
  What do you want to do?
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   653
  use (c)hanged version, leave (d)eleted, or leave (u)nresolved? u
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   654
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   655
  use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   656
  [1]
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   657
  $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   658
  U file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   659
Because we left it as 'unresolved' the file should still exist.
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   660
  $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   661
BC behavior: `hg resolve --mark` accepts that the file is still there, and
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   662
doesn't have a problem with this situation.
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   663
  $ hg resolve --mark --config commands.resolve.mark-check=abort
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   664
  (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   665
  $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   666
  R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   667
The file is still there:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   668
  $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   669
Let's check mark-check=warn:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   670
  $ hg resolve --unmark file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   671
  $ hg resolve --mark --config commands.resolve.mark-check=warn
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   672
  (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   673
  $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   674
  R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   675
The file is still there:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   676
  $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   677
Let's resolve the issue by deleting the file via `hg resolve`
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   678
  $ hg resolve --unmark file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   679
  $ echo 'd' | hg resolve file1 --config ui.interactive=1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   680
  file 'file1' was deleted in local [working copy] but was modified in other [merge rev].
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   681
  What do you want to do?
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   682
  use (c)hanged version, leave (d)eleted, or leave (u)nresolved? d
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   683
  (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   684
  $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   685
  R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   686
The file is deleted:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   687
  $ [ -f file1 ] && echo "File still exists?" || true
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   688
Doing `hg resolve --mark` doesn't break now that the file is missing:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   689
  $ hg resolve --mark --config commands.resolve.mark-check=abort
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   690
  (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   691
  $ hg resolve --mark --config commands.resolve.mark-check=warn
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   692
  (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   693
Resurrect the file, and delete it outside of hg:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   694
  $ hg resolve --unmark file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   695
  $ hg resolve file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   696
  file 'file1' was deleted in local [working copy] but was modified in other [merge rev].
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   697
  What do you want to do?
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   698
  use (c)hanged version, leave (d)eleted, or leave (u)nresolved? u
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   699
  [1]
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   700
  $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   701
  $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   702
  U file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   703
  $ rm file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   704
  $ hg resolve --mark --config commands.resolve.mark-check=abort
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   705
  (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   706
  $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   707
  R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   708
  $ hg resolve --unmark file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   709
  $ hg resolve file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   710
  file 'file1' was deleted in local [working copy] but was modified in other [merge rev].
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   711
  What do you want to do?
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   712
  use (c)hanged version, leave (d)eleted, or leave (u)nresolved? u
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   713
  [1]
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   714
  $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   715
  $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   716
  U file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   717
  $ rm file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   718
  $ hg resolve --mark --config commands.resolve.mark-check=warn
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   719
  (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   720
  $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   721
  R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   722
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   723
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   724
For completeness, let's try that in the opposite direction (merging r2 into r1,
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   725
instead of r1 into r2):
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   726
  $ hg update -qCr 1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   727
  $ hg merge -r 2
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   728
  file 'file1' was deleted in other [merge rev] but was modified in local [working copy].
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   729
  What do you want to do?
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   730
  use (c)hanged version, (d)elete, or leave (u)nresolved? u
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   731
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   732
  use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   733
  [1]
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   734
  $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   735
  U file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   736
Because we left it as 'unresolved' the file should still exist.
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   737
  $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   738
BC behavior: `hg resolve --mark` accepts that the file is still there, and
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   739
doesn't have a problem with this situation.
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   740
  $ hg resolve --mark --config commands.resolve.mark-check=abort
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   741
  (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   742
  $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   743
  R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   744
The file is still there:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   745
  $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   746
Let's check mark-check=warn:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   747
  $ hg resolve --unmark file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   748
  $ hg resolve --mark --config commands.resolve.mark-check=warn
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   749
  (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   750
  $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   751
  R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   752
The file is still there:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   753
  $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   754
Let's resolve the issue by deleting the file via `hg resolve`
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   755
  $ hg resolve --unmark file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   756
  $ echo 'd' | hg resolve file1 --config ui.interactive=1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   757
  file 'file1' was deleted in other [merge rev] but was modified in local [working copy].
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   758
  What do you want to do?
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   759
  use (c)hanged version, (d)elete, or leave (u)nresolved? d
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   760
  (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   761
  $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   762
  R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   763
The file is deleted:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   764
  $ [ -f file1 ] && echo "File still exists?" || true
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   765
Doing `hg resolve --mark` doesn't break now that the file is missing:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   766
  $ hg resolve --mark --config commands.resolve.mark-check=abort
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   767
  (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   768
  $ hg resolve --mark --config commands.resolve.mark-check=warn
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   769
  (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   770
Resurrect the file, and delete it outside of hg:
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   771
  $ hg resolve --unmark file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   772
  $ hg resolve file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   773
  file 'file1' was deleted in other [merge rev] but was modified in local [working copy].
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   774
  What do you want to do?
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   775
  use (c)hanged version, (d)elete, or leave (u)nresolved? u
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   776
  [1]
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   777
  $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   778
  $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   779
  U file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   780
  $ rm file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   781
  $ hg resolve --mark --config commands.resolve.mark-check=abort
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   782
  (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   783
  $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   784
  R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   785
  $ hg resolve --unmark file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   786
  $ hg resolve file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   787
  file 'file1' was deleted in other [merge rev] but was modified in local [working copy].
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   788
  What do you want to do?
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   789
  use (c)hanged version, (d)elete, or leave (u)nresolved? u
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   790
  [1]
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   791
  $ [ -f file1 ] || echo "File does not exist?"
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   792
  $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   793
  U file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   794
  $ rm file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   795
  $ hg resolve --mark --config commands.resolve.mark-check=warn
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   796
  (no more unresolved files)
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   797
  $ hg resolve --list
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   798
  R file1
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   799
183df3df6031 resolve: fix mark-check when a file was deleted on one side (issue6020)
Kyle Lippincott <spectral@google.com>
parents: 40578
diff changeset
   800
  $ cd ..