tests/test-backout.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Wed, 21 Feb 2024 10:41:09 +0100
changeset 51409 2f39c7aeb549
parent 48422 000130cfafb6
permissions -rw-r--r--
phases: large rewrite on retract boundary The new code is still pure Python, so we still have room to going significantly faster. However its complexity of the complex part is `O(|[min_new_draft, tip]|)` instead of `O(|[min_draft, tip]|` which should help tremendously one repository with old draft (like mercurial-devel or mozilla-try). This is especially useful as the most common "retract boundary" operation happens when we commit/rewrite new drafts or when we push new draft to a non-publishing server. In this case, the smallest new_revs is very close to the tip and there is very few work to do. A few smaller optimisation could be done for these cases and will be introduced in later changesets. We still have iterate over large sets of roots, but this is already a great improvement for a very small amount of work. We gather information on the affected changeset as we go as we can put it to use in the next changesets. This extra data collection might slowdown the `register_new` case a bit, however for register_new, it should not really matters. The set of new nodes is either small, so the impact is negligible, or the set of new nodes is large, and the amount of work to do to had them will dominate the overhead the collecting information in `changed_revs`. As this new code compute the changes on the fly, it unlock other interesting improvement to be done in later changeset.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
     1
  $ hg init basic
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
     2
  $ cd basic
2158
ec96c4518236 add backout command.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
     3
12328
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12327
diff changeset
     4
should complain
4365
46280c004f22 change tests to use simplemerge by default
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 2614
diff changeset
     5
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
     6
  $ hg backout
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
     7
  abort: please specify a revision to backout
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45812
diff changeset
     8
  [10]
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
     9
  $ hg backout -r 0 0
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
    10
  abort: please specify just one revision
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45812
diff changeset
    11
  [10]
4726
f6e961c0155b Fix and test 'hg backout' without or with too many revisions.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 4365
diff changeset
    12
12328
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12327
diff changeset
    13
basic operation
21413
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
    14
(this also tests that editor is invoked if the commit message is not
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
    15
specified explicitly)
4726
f6e961c0155b Fix and test 'hg backout' without or with too many revisions.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 4365
diff changeset
    16
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
    17
  $ echo a > a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
    18
  $ hg commit -d '0 0' -A -m a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
    19
  adding a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
    20
  $ echo b >> a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
    21
  $ hg commit -d '1 0' -m b
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
    22
21413
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
    23
  $ hg status --rev tip --rev "tip^1"
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
    24
  M a
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
    25
  $ HGEDITOR=cat hg backout -d '2 0' tip --tool=true
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
    26
  reverting a
21413
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
    27
  Backed out changeset a820f4f40a57
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
    28
  
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
    29
  
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
    30
  HG: Enter commit message.  Lines beginning with 'HG:' are removed.
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
    31
  HG: Leave message empty to abort commit.
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
    32
  HG: --
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
    33
  HG: user: test
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
    34
  HG: branch 'default'
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
    35
  HG: changed a
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
    36
  changeset 2:2929462c3dff backs out changeset 1:a820f4f40a57
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
    37
  $ cat a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
    38
  a
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
    39
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
    40
  parent: 2:2929462c3dff tip
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
    41
   Backed out changeset a820f4f40a57
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
    42
  branch: default
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
    43
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
    44
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
    45
  phases: 3 draft
2158
ec96c4518236 add backout command.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    46
23615
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    47
commit option
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    48
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    49
  $ cd ..
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    50
  $ hg init commit
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    51
  $ cd commit
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    52
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    53
  $ echo tomatoes > a
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    54
  $ hg add a
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    55
  $ hg commit -d '0 0' -m tomatoes
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    56
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    57
  $ echo chair > b
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    58
  $ hg add b
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    59
  $ hg commit -d '1 0' -m chair
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    60
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    61
  $ echo grapes >> a
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    62
  $ hg commit -d '2 0' -m grapes
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    63
27890
ce76c4d2b85c backout: commit changeset by default (BC)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27624
diff changeset
    64
  $ hg backout -d '4 0' 1 --tool=:fail
23615
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    65
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    66
  changeset 3:1c2161e97c0a backs out changeset 1:22cb4f70d813
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    67
  $ hg summary
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    68
  parent: 3:1c2161e97c0a tip
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    69
   Backed out changeset 22cb4f70d813
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    70
  branch: default
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    71
  commit: (clean)
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    72
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
    73
  phases: 4 draft
23615
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    74
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    75
  $ echo ypples > a
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    76
  $ hg commit -d '5 0' -m ypples
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    77
27890
ce76c4d2b85c backout: commit changeset by default (BC)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27624
diff changeset
    78
  $ hg backout -d '6 0' 2 --tool=:fail
23615
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    79
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    80
  use 'hg resolve' to retry unresolved file merges
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    81
  [1]
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    82
  $ hg summary
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    83
  parent: 4:ed99997b793d tip
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    84
   ypples
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    85
  branch: default
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    86
  commit: 1 unresolved (clean)
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
    87
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
    88
  phases: 5 draft
44344
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
    89
  $ hg log -G
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
    90
  @  changeset:   4:ed99997b793d
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
    91
  |  tag:         tip
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
    92
  |  user:        test
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
    93
  |  date:        Thu Jan 01 00:00:05 1970 +0000
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
    94
  |  summary:     ypples
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
    95
  |
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
    96
  o  changeset:   3:1c2161e97c0a
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
    97
  |  user:        test
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
    98
  |  date:        Thu Jan 01 00:00:04 1970 +0000
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
    99
  |  summary:     Backed out changeset 22cb4f70d813
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   100
  |
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   101
  o  changeset:   2:a8c6e511cfee
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   102
  |  user:        test
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   103
  |  date:        Thu Jan 01 00:00:02 1970 +0000
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   104
  |  summary:     grapes
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   105
  |
44345
14d0e89520a2 graphlog: use '%' for other context in merge conflict
Martin von Zweigbergk <martinvonz@google.com>
parents: 44344
diff changeset
   106
  %  changeset:   1:22cb4f70d813
44344
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   107
  |  user:        test
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   108
  |  date:        Thu Jan 01 00:00:01 1970 +0000
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   109
  |  summary:     chair
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   110
  |
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   111
  o  changeset:   0:a5cb2dde5805
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   112
     user:        test
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   113
     date:        Thu Jan 01 00:00:00 1970 +0000
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   114
     summary:     tomatoes
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   115
  
23615
7cfe58983bff backout: add --commit option
Mateusz Kwapich <mitrandir@fb.com>
parents: 21947
diff changeset
   116
12328
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12327
diff changeset
   117
file that was removed is recreated
21413
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
   118
(this also tests that editor is not invoked if the commit message is
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
   119
specified explicitly)
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   120
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   121
  $ cd ..
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   122
  $ hg init remove
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   123
  $ cd remove
2158
ec96c4518236 add backout command.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   124
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   125
  $ echo content > a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   126
  $ hg commit -d '0 0' -A -m a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   127
  adding a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   128
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   129
  $ hg rm a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   130
  $ hg commit -d '1 0' -m b
2158
ec96c4518236 add backout command.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   131
21413
edc55317de90 backout: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21267
diff changeset
   132
  $ HGEDITOR=cat hg backout -d '2 0' tip --tool=true -m "Backed out changeset 76862dcce372"
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   133
  adding a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   134
  changeset 2:de31bdc76c0d backs out changeset 1:76862dcce372
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   135
  $ cat a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   136
  content
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   137
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   138
  parent: 2:de31bdc76c0d tip
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   139
   Backed out changeset 76862dcce372
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   140
  branch: default
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   141
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   142
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   143
  phases: 3 draft
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   144
12328
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12327
diff changeset
   145
backout of backout is as if nothing happened
2158
ec96c4518236 add backout command.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   146
12810
a68ccfd9c7be backout: add --tool argument for specifying merge tool
Steve Borho <steve@borho.org>
parents: 12727
diff changeset
   147
  $ hg backout -d '3 0' --merge tip --tool=true
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   148
  removing a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   149
  changeset 3:7f6d0f120113 backs out changeset 2:de31bdc76c0d
15515
21766d5531cb tests: remove hacks for testing if file or directory exists
Mads Kiilerich <mads@kiilerich.com>
parents: 15211
diff changeset
   150
  $ test -f a
21766d5531cb tests: remove hacks for testing if file or directory exists
Mads Kiilerich <mads@kiilerich.com>
parents: 15211
diff changeset
   151
  [1]
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   152
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   153
  parent: 3:7f6d0f120113 tip
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   154
   Backed out changeset de31bdc76c0d
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   155
  branch: default
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   156
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   157
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   158
  phases: 4 draft
2158
ec96c4518236 add backout command.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   159
25878
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   160
Test that 'hg rollback' restores dirstate just before opening
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   161
transaction: in-memory dirstate changes should be written into
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   162
'.hg/journal.dirstate' as expected.
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   163
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   164
  $ echo 'removed soon' > b
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   165
  $ hg commit -A -d '4 0' -m 'prepare for subsequent removing'
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   166
  adding b
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   167
  $ echo 'newly added' > c
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   168
  $ hg add c
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   169
  $ hg remove b
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   170
  $ hg commit -d '5 0' -m 'prepare for subsequent backout'
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   171
  $ touch -t 200001010000 c
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   172
  $ hg status -A
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   173
  C c
39760
7e99b02768ef debugdirstate: deprecate --nodates in favor of --no-dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 39405
diff changeset
   174
  $ hg debugstate --no-dates
48422
000130cfafb6 rhg: Update the dirstate on disk after status
Simon Sapin <simon.sapin@octobus.net>
parents: 48387
diff changeset
   175
  n 644         12 set                 c
25878
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   176
  $ hg backout -d '6 0' -m 'to be rollback-ed soon' -r .
39405
cb70501d8b71 revert: fix the inconsistency of status msgs in --interactive mode
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 30332
diff changeset
   177
  removing c
25878
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   178
  adding b
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   179
  changeset 6:4bfec048029d backs out changeset 5:fac0b729a654
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   180
  $ hg rollback -q
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   181
  $ hg status -A
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   182
  A b
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   183
  R c
39760
7e99b02768ef debugdirstate: deprecate --nodates in favor of --no-dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 39405
diff changeset
   184
  $ hg debugstate --no-dates
25878
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   185
  a   0         -1 unset               b
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   186
  r   0          0 set                 c
800e090e9c64 localrepo: make journal.dirstate contain in-memory changes before transaction
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25382
diff changeset
   187
12328
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12327
diff changeset
   188
across branch
2158
ec96c4518236 add backout command.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   189
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   190
  $ cd ..
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   191
  $ hg init branch
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   192
  $ cd branch
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   193
  $ echo a > a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   194
  $ hg ci -Am0
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   195
  adding a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   196
  $ echo b > b
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   197
  $ hg ci -Am1
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   198
  adding b
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   199
  $ hg co -C 0
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   200
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   201
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   202
  parent: 0:f7b1eb17ad24 
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   203
   0
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   204
  branch: default
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   205
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   206
  update: 1 new changesets (update)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   207
  phases: 2 draft
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   208
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   209
should fail
2158
ec96c4518236 add backout command.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   210
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   211
  $ hg backout 1
20791
8dd867bd67e1 backout: improve confusing 'cannot backout change on a different branch' abort
Mads Kiilerich <madski@unity3d.com>
parents: 20594
diff changeset
   212
  abort: cannot backout change that is not an ancestor
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45812
diff changeset
   213
  [10]
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   214
  $ echo c > c
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   215
  $ hg ci -Am2
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   216
  adding c
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   217
  created new head
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   218
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   219
  parent: 2:db815d6d32e6 tip
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   220
   2
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   221
  branch: default
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   222
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   223
  update: 1 new changesets, 2 branch heads (merge)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   224
  phases: 3 draft
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   225
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   226
should fail
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   227
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   228
  $ hg backout 1
20791
8dd867bd67e1 backout: improve confusing 'cannot backout change on a different branch' abort
Mads Kiilerich <madski@unity3d.com>
parents: 20594
diff changeset
   229
  abort: cannot backout change that is not an ancestor
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45812
diff changeset
   230
  [10]
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   231
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   232
  parent: 2:db815d6d32e6 tip
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   233
   2
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   234
  branch: default
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   235
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   236
  update: 1 new changesets, 2 branch heads (merge)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   237
  phases: 3 draft
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   238
12328
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12327
diff changeset
   239
backout with merge
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   240
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   241
  $ cd ..
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   242
  $ hg init merge
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   243
  $ cd merge
5568
de620356064f backout: disallow across branches (issue655)
Matt Mackall <mpm@selenic.com>
parents: 4726
diff changeset
   244
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   245
  $ echo line 1 > a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   246
  $ echo line 2 >> a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   247
  $ hg commit -d '0 0' -A -m a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   248
  adding a
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   249
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   250
  parent: 0:59395513a13a tip
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   251
   a
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   252
  branch: default
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   253
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   254
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   255
  phases: 1 draft
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   256
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   257
remove line 1
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   258
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   259
  $ echo line 2 > a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   260
  $ hg commit -d '1 0' -m b
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   261
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   262
  $ echo line 3 >> a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   263
  $ hg commit -d '2 0' -m c
2158
ec96c4518236 add backout command.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   264
12810
a68ccfd9c7be backout: add --tool argument for specifying merge tool
Steve Borho <steve@borho.org>
parents: 12727
diff changeset
   265
  $ hg backout --merge -d '3 0' 1 --tool=true
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   266
  reverting a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   267
  created new head
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   268
  changeset 3:26b8ccb9ad91 backs out changeset 1:5a50a024c182
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   269
  merging with changeset 3:26b8ccb9ad91
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   270
  merging a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   271
  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   272
  (branch merge, don't forget to commit)
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   273
  $ hg commit -d '4 0' -m d
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   274
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   275
  parent: 4:c7df5e0b9c09 tip
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   276
   d
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   277
  branch: default
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   278
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   279
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   280
  phases: 5 draft
2158
ec96c4518236 add backout command.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   281
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   282
check line 1 is back
2158
ec96c4518236 add backout command.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   283
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   284
  $ cat a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   285
  line 1
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   286
  line 2
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   287
  line 3
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   288
26751
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   289
Test visibility of in-memory dirstate changes outside transaction to
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   290
external hook process
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   291
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   292
  $ cat > $TESTTMP/checkvisibility.sh <<EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   293
  > echo "==== \$1:"
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   294
  > hg parents --template "{rev}:{node|short}\n"
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   295
  > echo "===="
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   296
  > EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   297
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   298
"hg backout --merge REV1" at REV2 below implies steps below:
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   299
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   300
(1) update to REV1 (REV2 => REV1)
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   301
(2) revert by REV1^1
30332
318a24b52eeb spelling: fixes of non-dictionary words
Mads Kiilerich <madski@unity3d.com>
parents: 28011
diff changeset
   302
(3) commit backing out revision (REV3)
26751
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   303
(4) update to REV2 (REV3 => REV2)
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   304
(5) merge with REV3 (REV2 => REV2, REV3)
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   305
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   306
== test visibility to external preupdate hook
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   307
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   308
  $ hg update -q -C 2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   309
  $ hg --config extensions.strip= strip 3
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   310
  saved backup bundle to * (glob)
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   311
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   312
  $ cat >> .hg/hgrc <<EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   313
  > [hooks]
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   314
  > preupdate.visibility = sh $TESTTMP/checkvisibility.sh preupdate
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   315
  > EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   316
30332
318a24b52eeb spelling: fixes of non-dictionary words
Mads Kiilerich <madski@unity3d.com>
parents: 28011
diff changeset
   317
("-m" is needed to avoid writing dirstate changes out at other than
26751
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   318
invocation of the hook to be examined)
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   319
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   320
  $ hg backout --merge -d '3 0' 1 --tool=true -m 'fixed comment'
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   321
  ==== preupdate:
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   322
  2:6ea3f2a197a2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   323
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   324
  reverting a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   325
  created new head
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   326
  changeset 3:d92a3f57f067 backs out changeset 1:5a50a024c182
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   327
  ==== preupdate:
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   328
  3:d92a3f57f067
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   329
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   330
  merging with changeset 3:d92a3f57f067
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   331
  ==== preupdate:
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   332
  2:6ea3f2a197a2
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   333
  ====
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   334
  merging a
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   335
  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   336
  (branch merge, don't forget to commit)
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   337
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   338
  $ cat >> .hg/hgrc <<EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   339
  > [hooks]
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   340
  > preupdate.visibility =
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   341
  > EOF
520defbc0335 hook: centralize passing HG_PENDING to external hook process
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26517
diff changeset
   342
26752
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   343
== test visibility to external update hook
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   344
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   345
  $ hg update -q -C 2
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   346
  $ hg --config extensions.strip= strip 3
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   347
  saved backup bundle to * (glob)
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   348
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   349
  $ cat >> .hg/hgrc <<EOF
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   350
  > [hooks]
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   351
  > update.visibility = sh $TESTTMP/checkvisibility.sh update
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   352
  > EOF
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   353
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   354
  $ hg backout --merge -d '3 0' 1 --tool=true -m 'fixed comment'
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   355
  ==== update:
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   356
  1:5a50a024c182
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   357
  ====
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   358
  reverting a
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   359
  created new head
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   360
  changeset 3:d92a3f57f067 backs out changeset 1:5a50a024c182
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   361
  ==== update:
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   362
  2:6ea3f2a197a2
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   363
  ====
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   364
  merging with changeset 3:d92a3f57f067
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   365
  merging a
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   366
  ==== update:
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   367
  2:6ea3f2a197a2
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   368
  3:d92a3f57f067
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   369
  ====
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   370
  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   371
  (branch merge, don't forget to commit)
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   372
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   373
  $ cat >> .hg/hgrc <<EOF
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   374
  > [hooks]
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   375
  > update.visibility =
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   376
  > EOF
949e8c626d19 merge: make in-memory changes visible to external update hooks
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 26751
diff changeset
   377
16912
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 15623
diff changeset
   378
  $ cd ..
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 15623
diff changeset
   379
12328
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12327
diff changeset
   380
backout should not back out subsequent changesets
2158
ec96c4518236 add backout command.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
   381
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   382
  $ hg init onecs
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   383
  $ cd onecs
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   384
  $ echo 1 > a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   385
  $ hg commit -d '0 0' -A -m a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   386
  adding a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   387
  $ echo 2 >> a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   388
  $ hg commit -d '1 0' -m b
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   389
  $ echo 1 > b
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   390
  $ hg commit -d '2 0' -A -m c
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   391
  adding b
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   392
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   393
  parent: 2:882396649954 tip
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   394
   c
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   395
  branch: default
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   396
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   397
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   398
  phases: 3 draft
12727
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   399
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   400
without --merge
27890
ce76c4d2b85c backout: commit changeset by default (BC)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27624
diff changeset
   401
  $ hg backout --no-commit -d '3 0' 1 --tool=true
12727
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   402
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
20276
6545770bd379 backout: add a message after backout that need manual commit
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20275
diff changeset
   403
  changeset 22bca4c721e5 backed out, don't forget to commit.
12727
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   404
  $ hg locate b
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   405
  b
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   406
  $ hg update -C tip
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   407
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   408
  $ hg locate b
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   409
  b
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   410
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   411
  parent: 2:882396649954 tip
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   412
   c
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   413
  branch: default
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   414
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   415
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   416
  phases: 3 draft
12727
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   417
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   418
with --merge
12810
a68ccfd9c7be backout: add --tool argument for specifying merge tool
Steve Borho <steve@borho.org>
parents: 12727
diff changeset
   419
  $ hg backout --merge -d '3 0' 1 --tool=true
12727
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   420
  reverting a
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   421
  created new head
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   422
  changeset 3:3202beb76721 backs out changeset 1:22bca4c721e5
12727
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   423
  merging with changeset 3:3202beb76721
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   424
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   425
  (branch merge, don't forget to commit)
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   426
  $ hg locate b
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   427
  b
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   428
  $ hg update -C tip
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   429
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   430
  $ hg locate b
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 11856
diff changeset
   431
  [1]
2492
2f4addf56715 Test case for #295
Brendan Cully <brendan@kublai.com>
parents: 2186
diff changeset
   432
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   433
  $ cd ..
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   434
  $ hg init m
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   435
  $ cd m
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   436
  $ echo a > a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   437
  $ hg commit -d '0 0' -A -m a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   438
  adding a
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   439
  $ echo b > b
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   440
  $ hg commit -d '1 0' -A -m b
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   441
  adding b
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   442
  $ echo c > c
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   443
  $ hg commit -d '2 0' -A -m b
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   444
  adding c
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   445
  $ hg update 1
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   446
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   447
  $ echo d > d
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   448
  $ hg commit -d '3 0' -A -m c
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   449
  adding d
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   450
  created new head
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   451
  $ hg merge 2
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   452
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   453
  (branch merge, don't forget to commit)
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   454
  $ hg commit -d '4 0' -A -m d
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   455
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   456
  parent: 4:b2f3bb92043e tip
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   457
   d
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   458
  branch: default
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   459
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   460
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   461
  phases: 5 draft
2614
8ba1c31f6864 backout: allow backout of merge changeset with --parent option.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2492
diff changeset
   462
12328
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12327
diff changeset
   463
backout of merge should fail
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   464
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   465
  $ hg backout 4
15211
1209de02034e backout: deprecate/hide support for backing out merges
Matt Mackall <mpm@selenic.com>
parents: 13446
diff changeset
   466
  abort: cannot backout a merge changeset
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45812
diff changeset
   467
  [10]
2614
8ba1c31f6864 backout: allow backout of merge changeset with --parent option.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2492
diff changeset
   468
12328
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12327
diff changeset
   469
backout of merge with bad parent should fail
2614
8ba1c31f6864 backout: allow backout of merge changeset with --parent option.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2492
diff changeset
   470
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   471
  $ hg backout --parent 0 4
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   472
  abort: cb9a9f314b8b is not a parent of b2f3bb92043e
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45812
diff changeset
   473
  [10]
2614
8ba1c31f6864 backout: allow backout of merge changeset with --parent option.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2492
diff changeset
   474
12328
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12327
diff changeset
   475
backout of non-merge with parent should fail
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   476
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   477
  $ hg backout --parent 0 3
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   478
  abort: cannot use --parent on non-merge changeset
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45812
diff changeset
   479
  [10]
2614
8ba1c31f6864 backout: allow backout of merge changeset with --parent option.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2492
diff changeset
   480
12328
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12327
diff changeset
   481
backout with valid parent should be ok
2614
8ba1c31f6864 backout: allow backout of merge changeset with --parent option.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2492
diff changeset
   482
12810
a68ccfd9c7be backout: add --tool argument for specifying merge tool
Steve Borho <steve@borho.org>
parents: 12727
diff changeset
   483
  $ hg backout -d '5 0' --parent 2 4 --tool=true
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   484
  removing d
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   485
  changeset 5:10e5328c8435 backs out changeset 4:b2f3bb92043e
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   486
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   487
  parent: 5:10e5328c8435 tip
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   488
   Backed out changeset b2f3bb92043e
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   489
  branch: default
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   490
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   491
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   492
  phases: 6 draft
2614
8ba1c31f6864 backout: allow backout of merge changeset with --parent option.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2492
diff changeset
   493
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   494
  $ hg rollback
13446
1e497df514e2 rollback: clarifies the message about the reverted state (issue2628)
Gilles Moris <gilles.moris@free.fr>
parents: 12810
diff changeset
   495
  repository tip rolled back to revision 4 (undo commit)
1e497df514e2 rollback: clarifies the message about the reverted state (issue2628)
Gilles Moris <gilles.moris@free.fr>
parents: 12810
diff changeset
   496
  working directory now based on revision 4
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   497
  $ hg update -C
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   498
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   499
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   500
  parent: 4:b2f3bb92043e tip
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   501
   d
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   502
  branch: default
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   503
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   504
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   505
  phases: 5 draft
2614
8ba1c31f6864 backout: allow backout of merge changeset with --parent option.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2492
diff changeset
   506
12810
a68ccfd9c7be backout: add --tool argument for specifying merge tool
Steve Borho <steve@borho.org>
parents: 12727
diff changeset
   507
  $ hg backout -d '6 0' --parent 3 4 --tool=true
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   508
  removing c
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   509
  changeset 5:033590168430 backs out changeset 4:b2f3bb92043e
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   510
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   511
  parent: 5:033590168430 tip
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   512
   Backed out changeset b2f3bb92043e
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   513
  branch: default
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   514
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   515
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   516
  phases: 6 draft
6162
554715e584e6 Add test case for backout on named branches (issue665)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 6161
diff changeset
   517
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   518
  $ cd ..
6162
554715e584e6 Add test case for backout on named branches (issue665)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 6161
diff changeset
   519
12328
b63f6422d2a7 tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents: 12327
diff changeset
   520
named branches
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   521
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   522
  $ hg init named_branches
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   523
  $ cd named_branches
6162
554715e584e6 Add test case for backout on named branches (issue665)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 6161
diff changeset
   524
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   525
  $ echo default > default
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   526
  $ hg ci -d '0 0' -Am default
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   527
  adding default
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   528
  $ hg branch branch1
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   529
  marked working directory as branch branch1
15615
41885892796e branch: warn on branching
Matt Mackall <mpm@selenic.com>
parents: 15211
diff changeset
   530
  (branches are permanent and global, did you want a bookmark?)
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   531
  $ echo branch1 > file1
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   532
  $ hg ci -d '1 0' -Am file1
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   533
  adding file1
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   534
  $ hg branch branch2
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   535
  marked working directory as branch branch2
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   536
  $ echo branch2 > file2
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   537
  $ hg ci -d '2 0' -Am file2
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   538
  adding file2
12727
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   539
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   540
without --merge
27890
ce76c4d2b85c backout: commit changeset by default (BC)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27624
diff changeset
   541
  $ hg backout --no-commit -r 1 --tool=true
20275
2123d27ff75d backout: avoid update on simple case.
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20270
diff changeset
   542
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
20276
6545770bd379 backout: add a message after backout that need manual commit
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20275
diff changeset
   543
  changeset bf1602f437f3 backed out, don't forget to commit.
12727
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   544
  $ hg branch
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   545
  branch2
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   546
  $ hg status -A
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   547
  R file1
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   548
  C default
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   549
  C file2
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   550
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   551
  parent: 2:45bbcd363bf0 tip
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   552
   file2
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   553
  branch: branch2
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   554
  commit: 1 removed
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   555
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   556
  phases: 3 draft
12727
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   557
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   558
with --merge
21712
51035af2c0bf backout: accept '--edit' like other commands creating new changeset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21413
diff changeset
   559
(this also tests that editor is invoked if '--edit' is specified
51035af2c0bf backout: accept '--edit' like other commands creating new changeset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21413
diff changeset
   560
explicitly regardless of '--message')
51035af2c0bf backout: accept '--edit' like other commands creating new changeset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21413
diff changeset
   561
12727
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   562
  $ hg update -qC
21712
51035af2c0bf backout: accept '--edit' like other commands creating new changeset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21413
diff changeset
   563
  $ HGEDITOR=cat hg backout --merge -d '3 0' -r 1 -m 'backout on branch1' --tool=true --edit
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   564
  removing file1
21712
51035af2c0bf backout: accept '--edit' like other commands creating new changeset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21413
diff changeset
   565
  backout on branch1
51035af2c0bf backout: accept '--edit' like other commands creating new changeset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21413
diff changeset
   566
  
51035af2c0bf backout: accept '--edit' like other commands creating new changeset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21413
diff changeset
   567
  
51035af2c0bf backout: accept '--edit' like other commands creating new changeset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21413
diff changeset
   568
  HG: Enter commit message.  Lines beginning with 'HG:' are removed.
51035af2c0bf backout: accept '--edit' like other commands creating new changeset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21413
diff changeset
   569
  HG: Leave message empty to abort commit.
51035af2c0bf backout: accept '--edit' like other commands creating new changeset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21413
diff changeset
   570
  HG: --
51035af2c0bf backout: accept '--edit' like other commands creating new changeset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21413
diff changeset
   571
  HG: user: test
51035af2c0bf backout: accept '--edit' like other commands creating new changeset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21413
diff changeset
   572
  HG: branch 'branch2'
51035af2c0bf backout: accept '--edit' like other commands creating new changeset
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21413
diff changeset
   573
  HG: removed file1
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   574
  created new head
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   575
  changeset 3:d4e8f6db59fb backs out changeset 1:bf1602f437f3
12727
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   576
  merging with changeset 3:d4e8f6db59fb
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   577
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   578
  (branch merge, don't forget to commit)
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   579
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   580
  parent: 2:45bbcd363bf0 
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   581
   file2
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   582
  parent: 3:d4e8f6db59fb tip
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   583
   backout on branch1
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   584
  branch: branch2
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   585
  commit: 1 removed (merge)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   586
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   587
  phases: 4 draft
12727
52971985be14 backout: provide linear backout as a default (without --merge option)
Gilles Moris <gilles.moris@free.fr>
parents: 12328
diff changeset
   588
  $ hg update -q -C 2
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   589
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   590
on branch2 with branch1 not merged, so file1 should still exist:
6162
554715e584e6 Add test case for backout on named branches (issue665)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 6161
diff changeset
   591
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   592
  $ hg id
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   593
  45bbcd363bf0 (branch2)
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   594
  $ hg st -A
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   595
  C default
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   596
  C file1
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   597
  C file2
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   598
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   599
  parent: 2:45bbcd363bf0 
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   600
   file2
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   601
  branch: branch2
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   602
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   603
  update: 1 new changesets, 2 branch heads (merge)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   604
  phases: 4 draft
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   605
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   606
on branch2 with branch1 merged, so file1 should be gone:
6162
554715e584e6 Add test case for backout on named branches (issue665)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 6161
diff changeset
   607
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   608
  $ hg merge
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   609
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   610
  (branch merge, don't forget to commit)
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   611
  $ hg ci -d '4 0' -m 'merge backout of branch1'
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   612
  $ hg id
42621
99ebde4fec99 commit: improve the files field of changelog for merges
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39760
diff changeset
   613
  d97a8500a969 (branch2) tip
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   614
  $ hg st -A
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   615
  C default
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   616
  C file2
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   617
  $ hg summary
42621
99ebde4fec99 commit: improve the files field of changelog for merges
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 39760
diff changeset
   618
  parent: 4:d97a8500a969 tip
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   619
   merge backout of branch1
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   620
  branch: branch2
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   621
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   622
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   623
  phases: 5 draft
6162
554715e584e6 Add test case for backout on named branches (issue665)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 6161
diff changeset
   624
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   625
on branch1, so no file1 and file2:
6162
554715e584e6 Add test case for backout on named branches (issue665)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 6161
diff changeset
   626
11856
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   627
  $ hg co -C branch1
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   628
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   629
  $ hg id
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   630
  bf1602f437f3 (branch1)
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   631
  $ hg st -A
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   632
  C default
db969ebdebd9 tests: unify test-backout
Martin Geisler <mg@lazybytes.net>
parents: 8167
diff changeset
   633
  C file1
20270
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   634
  $ hg summary
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   635
  parent: 1:bf1602f437f3 
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   636
   file1
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   637
  branch: branch1
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   638
  commit: (clean)
0763d829cbea test-backout: add multiple summary calls to monitor result wc
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 16912
diff changeset
   639
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   640
  phases: 5 draft
16912
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 15623
diff changeset
   641
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 15623
diff changeset
   642
  $ cd ..
20594
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   643
20872
3f83fc5cfe71 backout: correct commit status of no changes made (BC) (issue4190)
Yuya Nishihara <yuya@tcha.org>
parents: 20594
diff changeset
   644
backout of empty changeset (issue4190)
3f83fc5cfe71 backout: correct commit status of no changes made (BC) (issue4190)
Yuya Nishihara <yuya@tcha.org>
parents: 20594
diff changeset
   645
3f83fc5cfe71 backout: correct commit status of no changes made (BC) (issue4190)
Yuya Nishihara <yuya@tcha.org>
parents: 20594
diff changeset
   646
  $ hg init emptycommit
3f83fc5cfe71 backout: correct commit status of no changes made (BC) (issue4190)
Yuya Nishihara <yuya@tcha.org>
parents: 20594
diff changeset
   647
  $ cd emptycommit
3f83fc5cfe71 backout: correct commit status of no changes made (BC) (issue4190)
Yuya Nishihara <yuya@tcha.org>
parents: 20594
diff changeset
   648
3f83fc5cfe71 backout: correct commit status of no changes made (BC) (issue4190)
Yuya Nishihara <yuya@tcha.org>
parents: 20594
diff changeset
   649
  $ touch file1
3f83fc5cfe71 backout: correct commit status of no changes made (BC) (issue4190)
Yuya Nishihara <yuya@tcha.org>
parents: 20594
diff changeset
   650
  $ hg ci -Aqm file1
3f83fc5cfe71 backout: correct commit status of no changes made (BC) (issue4190)
Yuya Nishihara <yuya@tcha.org>
parents: 20594
diff changeset
   651
  $ hg branch -q branch1
3f83fc5cfe71 backout: correct commit status of no changes made (BC) (issue4190)
Yuya Nishihara <yuya@tcha.org>
parents: 20594
diff changeset
   652
  $ hg ci -qm branch1
3f83fc5cfe71 backout: correct commit status of no changes made (BC) (issue4190)
Yuya Nishihara <yuya@tcha.org>
parents: 20594
diff changeset
   653
  $ hg backout -v 1
3f83fc5cfe71 backout: correct commit status of no changes made (BC) (issue4190)
Yuya Nishihara <yuya@tcha.org>
parents: 20594
diff changeset
   654
  resolving manifests
3f83fc5cfe71 backout: correct commit status of no changes made (BC) (issue4190)
Yuya Nishihara <yuya@tcha.org>
parents: 20594
diff changeset
   655
  nothing changed
3f83fc5cfe71 backout: correct commit status of no changes made (BC) (issue4190)
Yuya Nishihara <yuya@tcha.org>
parents: 20594
diff changeset
   656
  [1]
3f83fc5cfe71 backout: correct commit status of no changes made (BC) (issue4190)
Yuya Nishihara <yuya@tcha.org>
parents: 20594
diff changeset
   657
3f83fc5cfe71 backout: correct commit status of no changes made (BC) (issue4190)
Yuya Nishihara <yuya@tcha.org>
parents: 20594
diff changeset
   658
  $ cd ..
3f83fc5cfe71 backout: correct commit status of no changes made (BC) (issue4190)
Yuya Nishihara <yuya@tcha.org>
parents: 20594
diff changeset
   659
20594
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   660
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   661
Test usage of `hg resolve` in case of conflict
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   662
(issue4163)
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   663
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   664
  $ hg init issue4163
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   665
  $ cd issue4163
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   666
  $ touch foo
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   667
  $ hg add foo
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   668
  $ cat > foo << EOF
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   669
  > one
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   670
  > two
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   671
  > three
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   672
  > four
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   673
  > five
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   674
  > six
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   675
  > seven
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   676
  > height
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   677
  > nine
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   678
  > ten
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   679
  > EOF
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   680
  $ hg ci -m 'initial'
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   681
  $ cat > foo << EOF
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   682
  > one
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   683
  > two
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   684
  > THREE
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   685
  > four
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   686
  > five
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   687
  > six
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   688
  > seven
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   689
  > height
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   690
  > nine
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   691
  > ten
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   692
  > EOF
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   693
  $ hg ci -m 'capital three'
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   694
  $ cat > foo << EOF
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   695
  > one
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   696
  > two
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   697
  > THREE
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   698
  > four
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   699
  > five
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   700
  > six
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   701
  > seven
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   702
  > height
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   703
  > nine
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   704
  > TEN
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   705
  > EOF
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   706
  $ hg ci -m 'capital ten'
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   707
  $ hg backout -r 'desc("capital three")' --tool internal:fail
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   708
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   709
  use 'hg resolve' to retry unresolved file merges
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   710
  [1]
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   711
  $ hg status
44396
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 44345
diff changeset
   712
  $ hg debugmergestate -v
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 44345
diff changeset
   713
  v1 and v2 states match: using v2
26501
0748083f2898 commands: add a new debug command to print merge state
Siddharth Agarwal <sid0@fb.com>
parents: 25878
diff changeset
   714
  local: b71750c4b0fdf719734971e3ef90dbeab5919a2d
0748083f2898 commands: add a new debug command to print merge state
Siddharth Agarwal <sid0@fb.com>
parents: 25878
diff changeset
   715
  other: a30dd8addae3ce71b8667868478542bc417439e6
44396
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 44345
diff changeset
   716
  file: foo (state "u")
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 44345
diff changeset
   717
    local path: foo (hash 0beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33, flags "")
26501
0748083f2898 commands: add a new debug command to print merge state
Siddharth Agarwal <sid0@fb.com>
parents: 25878
diff changeset
   718
    ancestor path: foo (node f89532f44c247a0e993d63e3a734dd781ab04708)
0748083f2898 commands: add a new debug command to print merge state
Siddharth Agarwal <sid0@fb.com>
parents: 25878
diff changeset
   719
    other path: foo (node f50039b486d6fa1a90ae51778388cad161f425ee)
44396
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 44345
diff changeset
   720
    extra: ancestorlinknode = 91360952243723bd5b1138d5f26bd8c8564cb553
46811
5a0b930cfb3e commit: get info from mergestate whether a file was merged or not
Pulkit Goyal <7895pulkit@gmail.com>
parents: 45827
diff changeset
   721
    extra: merged = yes
26501
0748083f2898 commands: add a new debug command to print merge state
Siddharth Agarwal <sid0@fb.com>
parents: 25878
diff changeset
   722
  $ mv .hg/merge/state2 .hg/merge/state2-moved
44396
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 44345
diff changeset
   723
  $ hg debugmergestate -v
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 44345
diff changeset
   724
  no version 2 merge state
26501
0748083f2898 commands: add a new debug command to print merge state
Siddharth Agarwal <sid0@fb.com>
parents: 25878
diff changeset
   725
  local: b71750c4b0fdf719734971e3ef90dbeab5919a2d
44396
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 44345
diff changeset
   726
  other: b71750c4b0fdf719734971e3ef90dbeab5919a2d
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 44345
diff changeset
   727
  file: foo (state "u")
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 44345
diff changeset
   728
    local path: foo (hash 0beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33, flags "")
26501
0748083f2898 commands: add a new debug command to print merge state
Siddharth Agarwal <sid0@fb.com>
parents: 25878
diff changeset
   729
    ancestor path: foo (node f89532f44c247a0e993d63e3a734dd781ab04708)
44396
acbfa31cfaf2 debugmergestate: make templated
Martin von Zweigbergk <martinvonz@google.com>
parents: 44345
diff changeset
   730
    other path:  (node foo)
26501
0748083f2898 commands: add a new debug command to print merge state
Siddharth Agarwal <sid0@fb.com>
parents: 25878
diff changeset
   731
  $ mv .hg/merge/state2-moved .hg/merge/state2
20594
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   732
  $ hg resolve -l  # still unresolved
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   733
  U foo
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   734
  $ hg summary
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   735
  parent: 2:b71750c4b0fd tip
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   736
   capital ten
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   737
  branch: default
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   738
  commit: 1 unresolved (clean)
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   739
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   740
  phases: 3 draft
44344
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   741
  $ hg log -G
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   742
  @  changeset:   2:b71750c4b0fd
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   743
  |  tag:         tip
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   744
  |  user:        test
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   745
  |  date:        Thu Jan 01 00:00:00 1970 +0000
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   746
  |  summary:     capital ten
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   747
  |
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   748
  o  changeset:   1:913609522437
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   749
  |  user:        test
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   750
  |  date:        Thu Jan 01 00:00:00 1970 +0000
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   751
  |  summary:     capital three
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   752
  |
44345
14d0e89520a2 graphlog: use '%' for other context in merge conflict
Martin von Zweigbergk <martinvonz@google.com>
parents: 44344
diff changeset
   753
  %  changeset:   0:a30dd8addae3
44344
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   754
     user:        test
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   755
     date:        Thu Jan 01 00:00:00 1970 +0000
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   756
     summary:     initial
ab632e27f296 tests: add `hg log -G` output when there are merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42621
diff changeset
   757
  
20594
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   758
  $ hg resolve --all --debug
27161
296d55def9c4 filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents: 26976
diff changeset
   759
  picked tool ':merge' for foo (binary False symlink False changedelete False)
20594
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   760
  merging foo
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   761
  my foo@b71750c4b0fd+ other foo@a30dd8addae3 ancestor foo@913609522437
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   762
   premerge successful
21947
b081decd9062 resolve: add parenthesis around "no more unresolved files" message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21712
diff changeset
   763
  (no more unresolved files)
27624
d46db4390715 resolve: suggest the next action
timeless <timeless@mozdev.org>
parents: 27161
diff changeset
   764
  continue: hg commit
20594
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   765
  $ hg status
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   766
  M foo
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   767
  ? foo.orig
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   768
  $ hg resolve -l
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   769
  R foo
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   770
  $ hg summary
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   771
  parent: 2:b71750c4b0fd tip
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   772
   capital ten
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   773
  branch: default
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   774
  commit: 1 modified, 1 unknown
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   775
  update: (current)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25295
diff changeset
   776
  phases: 3 draft
20594
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   777
  $ cat foo
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   778
  one
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   779
  two
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   780
  three
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   781
  four
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   782
  five
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   783
  six
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   784
  seven
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   785
  height
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   786
  nine
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   787
  TEN
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   788
27912
ae4e6b80f084 backout: fix --no-commit option (issue5054)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27890
diff changeset
   789
--no-commit shouldn't commit
20594
ba619c50a355 resolve: use "other" changeset from merge state (issue4163)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 20276
diff changeset
   790
27912
ae4e6b80f084 backout: fix --no-commit option (issue5054)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27890
diff changeset
   791
  $ hg init a
ae4e6b80f084 backout: fix --no-commit option (issue5054)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27890
diff changeset
   792
  $ cd a
ae4e6b80f084 backout: fix --no-commit option (issue5054)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27890
diff changeset
   793
  $ for i in 1 2 3; do
ae4e6b80f084 backout: fix --no-commit option (issue5054)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27890
diff changeset
   794
  >   touch $i
ae4e6b80f084 backout: fix --no-commit option (issue5054)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27890
diff changeset
   795
  >   hg ci -Am $i
ae4e6b80f084 backout: fix --no-commit option (issue5054)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27890
diff changeset
   796
  > done
ae4e6b80f084 backout: fix --no-commit option (issue5054)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27890
diff changeset
   797
  adding 1
ae4e6b80f084 backout: fix --no-commit option (issue5054)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27890
diff changeset
   798
  adding 2
ae4e6b80f084 backout: fix --no-commit option (issue5054)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27890
diff changeset
   799
  adding 3
ae4e6b80f084 backout: fix --no-commit option (issue5054)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27890
diff changeset
   800
  $ hg backout --no-commit .
ae4e6b80f084 backout: fix --no-commit option (issue5054)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27890
diff changeset
   801
  removing 3
ae4e6b80f084 backout: fix --no-commit option (issue5054)
Ruslan Sayfutdinov <sayfutdinov@fb.com>
parents: 27890
diff changeset
   802
  changeset cccc23d9d68f backed out, don't forget to commit.
27954
9960b6369e7f backout: disable --merge with --no-commit (issue4874)
Yuya Nishihara <yuya@tcha.org>
parents: 27912
diff changeset
   803
  $ hg revert -aq
9960b6369e7f backout: disable --merge with --no-commit (issue4874)
Yuya Nishihara <yuya@tcha.org>
parents: 27912
diff changeset
   804
9960b6369e7f backout: disable --merge with --no-commit (issue4874)
Yuya Nishihara <yuya@tcha.org>
parents: 27912
diff changeset
   805
--no-commit can't be used with --merge
9960b6369e7f backout: disable --merge with --no-commit (issue4874)
Yuya Nishihara <yuya@tcha.org>
parents: 27912
diff changeset
   806
9960b6369e7f backout: disable --merge with --no-commit (issue4874)
Yuya Nishihara <yuya@tcha.org>
parents: 27912
diff changeset
   807
  $ hg backout --merge --no-commit 2
45739
693da1b928af backout: leverage cmdutil.check_incompatible_arguments()
Martin von Zweigbergk <martinvonz@google.com>
parents: 44396
diff changeset
   808
  abort: cannot specify both --no-commit and --merge
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45812
diff changeset
   809
  [10]
45760
e0ad11ab8052 backout: don't assume that tip as what we just committed
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45739
diff changeset
   810
e0ad11ab8052 backout: don't assume that tip as what we just committed
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45739
diff changeset
   811
Ensure that backout out the same changeset twice performs correctly:
e0ad11ab8052 backout: don't assume that tip as what we just committed
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45739
diff changeset
   812
e0ad11ab8052 backout: don't assume that tip as what we just committed
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45739
diff changeset
   813
  $ hg backout 2
e0ad11ab8052 backout: don't assume that tip as what we just committed
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45739
diff changeset
   814
  removing 3
e0ad11ab8052 backout: don't assume that tip as what we just committed
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45739
diff changeset
   815
  changeset 3:8f188de730d9 backs out changeset 2:cccc23d9d68f
e0ad11ab8052 backout: don't assume that tip as what we just committed
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45739
diff changeset
   816
  $ echo 4 > 4
e0ad11ab8052 backout: don't assume that tip as what we just committed
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45739
diff changeset
   817
  $ hg ci -A -m 4
e0ad11ab8052 backout: don't assume that tip as what we just committed
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45739
diff changeset
   818
  adding 4
e0ad11ab8052 backout: don't assume that tip as what we just committed
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45739
diff changeset
   819
  $ hg up 2
e0ad11ab8052 backout: don't assume that tip as what we just committed
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45739
diff changeset
   820
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
e0ad11ab8052 backout: don't assume that tip as what we just committed
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45739
diff changeset
   821
  $ hg backout 2
e0ad11ab8052 backout: don't assume that tip as what we just committed
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45739
diff changeset
   822
  removing 3
45812
976b26bdd0d8 commit: warn the user when a commit already exists
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45760
diff changeset
   823
  warning: commit already existed in the repository!
45760
e0ad11ab8052 backout: don't assume that tip as what we just committed
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents: 45739
diff changeset
   824
  changeset 3:8f188de730d9 backs out changeset 2:cccc23d9d68f