tests/test-transplant.t
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
Wed, 08 Jul 2015 17:01:09 +0900
changeset 25757 4d1382fd96ff
parent 25695 ce3d4b858420
child 25879 99e88320d665
permissions -rw-r--r--
context: write dirstate out explicitly at the end of markcommitted To detect change of a file without redundant comparison of file content, dirstate recognizes a file as certainly clean, if: (1) it is already known as "normal", (2) dirstate entry for it has valid (= not "-1") timestamp, and (3) mode, size and timestamp of it on the filesystem are as same as ones expected in dirstate This works as expected in many cases, but doesn't in the corner case that changing a file keeps mode, size and timestamp of it on the filesystem. The timetable below shows steps in one of typical such situations: ---- ----------------------------------- ---------------- timestamp of "f" ---------------- dirstate file- time action mem file system ---- ----------------------------------- ---- ----- ----- * *** *** - 'hg transplant REV1 REV2 ...' - transplanting REV1 .... N - change "f", but keep size N (via 'patch.patch()') - 'dirstate.normal("f")' N *** (via 'repo.commit()') - transplanting REV2 - change "f", but keep size N (via 'patch.patch()') - aborted while patching N+1 - release wlock - 'dirstate.write()' N N N - 'hg status' shows "r1" as "clean" N N N ---- ----------------------------------- ---- ----- ----- The most important point is that 'dirstate.write()' is executed at N+1 or later. This causes writing dirstate timestamp N of "f" out successfully. If it is executed at N, 'parsers.pack_dirstate()' replaces timestamp N with "-1" before actual writing dirstate out. This issue can occur when 'hg transplant' satisfies conditions below: - multiple revisions to be transplanted change the same file - those revisions don't change mode and size of the file, and - the 2nd or later revision of them fails after changing the file The root cause of this issue is that files are changed without flushing in-memory dirstate changes via 'repo.commit()' (even though omitting 'dirstate.normallookup()' on files changed by 'patch.patch()' for efficiency also causes this issue). To detect changes of files correctly, this patch writes in-memory dirstate changes out explicitly after marking files as clean in 'committablectx.markcommitted()', which is invoked via 'repo.commit()'. After this change, timetable is changed as below: ---- ----------------------------------- ---------------- timestamp of "f" ---------------- dirstate file- time action mem file system ---- ----------------------------------- ---- ----- ----- * *** *** - 'hg transplant REV1 REV2 ...' - transplanting REV1 .... N - change "f", but keep size N (via 'patch.patch()') - 'dirstate.normal("f")' N *** (via 'repo.commit()') ----------------------------------- ---- ----- ----- - 'dirsttate.write()' -1 -1 ----------------------------------- ---- ----- ----- - transplanting REV2 - change "f", but keep size N (via 'patch.patch()') - aborted while patching N+1 - release wlock - 'dirstate.write()' -1 -1 N - 'hg status' shows "r1" as "clean" -1 -1 N ---- ----------------------------------- ---- ----- ----- To reproduce this issue in tests certainly, this patch emulates some timing critical actions as below: - change "f" at N 'patch.patch()' with 'fakepatchtime.py' explicitly changes mtime of patched files to "2000-01-01 00:00" (= N). - 'dirstate.write()' via 'repo.commit()' at N 'fakedirstatewritetime.py' forces 'pack_dirstate()' to use "2000-01-01 00:00" as "now", only if 'pack_dirstate()' is invoked via 'committablectx.markcommitted()'. - 'dirstate.write()' via releasing wlock at N+1 (or "not at N") 'pack_dirstate()' via releasing wlock uses actual timestamp at runtime as "now", and it should be different from the "2000-01-01 00:00" of "f". BTW, this patch doesn't test cases below, even though 'patch.patch()' is used similarly in these cases: 1. failure of 'hg import' or 'hg qpush' 2. success of 'hg import', 'hg qpush' or 'hg transplant' Case (1) above doesn't cause this kind of issue, because: - if patching is aborted by conflicts, changed files are committed changed files are marked as CLEAN, even though they are partially patched. - otherwise, dirstate are fully restored by 'dirstateguard' For example in timetable above, timestamp of "f" in .hg/dirstate is restored to -1 (or less than N), and subsequent 'hg status' can detect changes correctly. Case (2) always causes 'repo.status()' invocation via 'repo.commit()' just after changing files inside same wlock scope. ---- ----------------------------------- ---------------- timestamp of "f" ---------------- dirstate file- time action mem file system ---- ----------------------------------- ---- ----- ----- N *** *** - make file "f" clean N - execute 'hg foobar' .... - 'dirstate.normal("f")' N *** (e.g. via dirty check or previous 'repo.commit()') - change "f", but keep size N - 'repo.status()' (*1) (via 'repo.commit()') ---- ----------------------------------- ---- ----- ----- At a glance, 'repo.status()' at (*1) seems to cause similar issue (= "changed files are treated as clean"), but actually doesn't. 'dirstate._lastnormaltime' should be N at (*1) above, because 'dirstate.normal()' via dirty check is finished at N. Therefore, "f" changed at N (= 'dirstate._lastnormaltime') is forcibly treated as "unsure" at (*1), and changes are detected as expected (see 'dirstate.status()' for detail). If 'hg import' is executed with '--no-commit', 'repo.status()' isn't invoked just after changing files inside same wlock scope. But preceding 'dirstate.normal()' is invoked inside another wlock scope via 'cmdutil.bailifchanged()', and in-memory changes should be flushed at the end of that scope. Therefore, timestamp N of clean "f" should be replaced by -1, if 'dirstate.write()' is invoked at N. It means that condition of this issue isn't satisfied.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 21411
diff changeset
     1
#require killdaemons
15446
c5c9ca3719f9 tests: use 'hghave serve' to guard tests that requires serve daemon management
Mads Kiilerich <mads@kiilerich.com>
parents: 15204
diff changeset
     2
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
     3
  $ cat <<EOF >> $HGRCPATH
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
     4
  > [extensions]
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
     5
  > transplant=
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
     6
  > EOF
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
     7
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
     8
  $ hg init t
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
     9
  $ cd t
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    10
  $ echo r1 > r1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    11
  $ hg ci -Amr1 -d'0 0'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    12
  adding r1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    13
  $ echo r2 > r2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    14
  $ hg ci -Amr2 -d'1 0'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    15
  adding r2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    16
  $ hg up 0
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    17
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
    18
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    19
  $ echo b1 > b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    20
  $ hg ci -Amb1 -d '0 0'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    21
  adding b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    22
  created new head
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    23
  $ echo b2 > b2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    24
  $ hg ci -Amb2 -d '1 0'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    25
  adding b2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    26
  $ echo b3 > b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    27
  $ hg ci -Amb3 -d '2 0'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    28
  adding b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    29
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    30
  $ hg log --template '{rev} {parents} {desc}\n'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    31
  4  b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    32
  3  b2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    33
  2 0:17ab29e464c6  b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    34
  1  r2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    35
  0  r1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    36
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    37
  $ hg clone . ../rebase
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    38
  updating to branch default
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    39
  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    40
  $ cd ../rebase
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    41
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    42
  $ hg up -C 1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    43
  1 files updated, 0 files merged, 3 files removed, 0 files unresolved
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
    44
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    45
rebase b onto r1
21411
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
    46
(this also tests that editor is not invoked if '--edit' is not specified)
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    47
21411
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
    48
  $ HGEDITOR=cat hg transplant -a -b tip
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    49
  applying 37a1297eb21b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    50
  37a1297eb21b transplanted to e234d668f844
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    51
  applying 722f4667af76
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    52
  722f4667af76 transplanted to 539f377d78df
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    53
  applying a53251cdf717
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    54
  a53251cdf717 transplanted to ffd6818a3975
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    55
  $ hg log --template '{rev} {parents} {desc}\n'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    56
  7  b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    57
  6  b2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    58
  5 1:d11e3596cc1a  b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    59
  4  b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    60
  3  b2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    61
  2 0:17ab29e464c6  b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    62
  1  r2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
    63
  0  r1
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
    64
12811
0e284735e65b test-transplant: test transplanted() revset
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
    65
test transplanted revset
0e284735e65b test-transplant: test transplanted() revset
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
    66
0e284735e65b test-transplant: test transplanted() revset
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
    67
  $ hg log -r 'transplanted()' --template '{rev} {parents} {desc}\n'
0e284735e65b test-transplant: test transplanted() revset
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
    68
  5 1:d11e3596cc1a  b1
0e284735e65b test-transplant: test transplanted() revset
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
    69
  6  b2
0e284735e65b test-transplant: test transplanted() revset
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
    70
  7  b3
0e284735e65b test-transplant: test transplanted() revset
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
    71
  $ hg help revsets | grep transplanted
14211
b00ab6890fe9 transplant: fix revset doc
Idan Kamara <idankk86@gmail.com>
parents: 14012
diff changeset
    72
      "transplanted([set])"
b00ab6890fe9 transplant: fix revset doc
Idan Kamara <idankk86@gmail.com>
parents: 14012
diff changeset
    73
        Transplanted changesets in set, or all transplanted changesets.
12811
0e284735e65b test-transplant: test transplanted() revset
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
    74
21024
7731a2281cf0 spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents: 20269
diff changeset
    75
test transplanted keyword
13689
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
    76
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
    77
  $ hg log --template '{rev} {transplanted}\n'
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
    78
  7 a53251cdf717679d1907b289f991534be05c997a
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
    79
  6 722f4667af767100cb15b6a79324bf8abbfe1ef4
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
    80
  5 37a1297eb21b3ef5c5d2ffac22121a0988ed9f21
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
    81
  4 
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
    82
  3 
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
    83
  2 
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
    84
  1 
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
    85
  0 
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
    86
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
    87
test destination() revset predicate with a transplant of a transplant; new
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
    88
clone so subsequent rollback isn't affected
21411
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
    89
(this also tests that editor is invoked if '--edit' is specified)
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
    90
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
    91
  $ hg clone -q . ../destination
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
    92
  $ cd ../destination
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
    93
  $ hg up -Cq 0
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
    94
  $ hg branch -q b4
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
    95
  $ hg ci -qm "b4"
21411
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
    96
  $ hg status --rev "7^1" --rev 7
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
    97
  A b3
22252
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
    98
  $ cat > $TESTTMP/checkeditform.sh <<EOF
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
    99
  > env | grep HGEDITFORM
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   100
  > true
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   101
  > EOF
23092
501dc6b1ca78 tests: introduce "checkeditform-n-cat.sh" script to invoke "cat" in it safely
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22947
diff changeset
   102
  $ cat > $TESTTMP/checkeditform-n-cat.sh <<EOF
501dc6b1ca78 tests: introduce "checkeditform-n-cat.sh" script to invoke "cat" in it safely
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22947
diff changeset
   103
  > env | grep HGEDITFORM
501dc6b1ca78 tests: introduce "checkeditform-n-cat.sh" script to invoke "cat" in it safely
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22947
diff changeset
   104
  > cat \$*
501dc6b1ca78 tests: introduce "checkeditform-n-cat.sh" script to invoke "cat" in it safely
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22947
diff changeset
   105
  > EOF
501dc6b1ca78 tests: introduce "checkeditform-n-cat.sh" script to invoke "cat" in it safely
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22947
diff changeset
   106
  $ HGEDITOR="sh $TESTTMP/checkeditform-n-cat.sh" hg transplant --edit 7
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   107
  applying ffd6818a3975
22252
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   108
  HGEDITFORM=transplant.normal
21411
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
   109
  b3
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
   110
  
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
   111
  
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
   112
  HG: Enter commit message.  Lines beginning with 'HG:' are removed.
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
   113
  HG: Leave message empty to abort commit.
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
   114
  HG: --
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
   115
  HG: user: test
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
   116
  HG: branch 'b4'
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
   117
  HG: added b3
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   118
  ffd6818a3975 transplanted to 502236fa76bb
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   119
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   120
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   121
  $ hg log -r 'destination()'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   122
  changeset:   5:e234d668f844
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   123
  parent:      1:d11e3596cc1a
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   124
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   125
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   126
  summary:     b1
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   127
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   128
  changeset:   6:539f377d78df
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   129
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   130
  date:        Thu Jan 01 00:00:01 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   131
  summary:     b2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   132
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   133
  changeset:   7:ffd6818a3975
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   134
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   135
  date:        Thu Jan 01 00:00:02 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   136
  summary:     b3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   137
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   138
  changeset:   9:502236fa76bb
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   139
  branch:      b4
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   140
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   141
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   142
  date:        Thu Jan 01 00:00:02 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   143
  summary:     b3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   144
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   145
  $ hg log -r 'destination(a53251cdf717)'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   146
  changeset:   7:ffd6818a3975
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   147
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   148
  date:        Thu Jan 01 00:00:02 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   149
  summary:     b3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   150
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   151
  changeset:   9:502236fa76bb
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   152
  branch:      b4
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   153
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   154
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   155
  date:        Thu Jan 01 00:00:02 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   156
  summary:     b3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   157
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   158
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   159
test subset parameter in reverse order
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   160
  $ hg log -r 'reverse(all()) and destination(a53251cdf717)'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   161
  changeset:   9:502236fa76bb
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   162
  branch:      b4
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   163
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   164
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   165
  date:        Thu Jan 01 00:00:02 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   166
  summary:     b3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   167
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   168
  changeset:   7:ffd6818a3975
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   169
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   170
  date:        Thu Jan 01 00:00:02 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   171
  summary:     b3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   172
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   173
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   174
back to the original dir
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   175
  $ cd ../rebase
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
   176
15204
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
   177
rollback the transplant
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
   178
  $ hg rollback
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
   179
  repository tip rolled back to revision 4 (undo transplant)
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
   180
  working directory now based on revision 1
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
   181
  $ hg tip -q
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
   182
  4:a53251cdf717
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
   183
  $ hg parents -q
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
   184
  1:d11e3596cc1a
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
   185
  $ hg status
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
   186
  ? b1
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
   187
  ? b2
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
   188
  ? b3
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
   189
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   190
  $ hg clone ../t ../prune
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   191
  updating to branch default
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   192
  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   193
  $ cd ../prune
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
   194
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   195
  $ hg up -C 1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   196
  1 files updated, 0 files merged, 3 files removed, 0 files unresolved
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   197
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   198
rebase b onto r1, skipping b2
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
   199
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   200
  $ hg transplant -a -b tip -p 3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   201
  applying 37a1297eb21b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   202
  37a1297eb21b transplanted to e234d668f844
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   203
  applying a53251cdf717
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   204
  a53251cdf717 transplanted to 7275fda4d04f
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   205
  $ hg log --template '{rev} {parents} {desc}\n'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   206
  6  b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   207
  5 1:d11e3596cc1a  b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   208
  4  b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   209
  3  b2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   210
  2 0:17ab29e464c6  b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   211
  1  r2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   212
  0  r1
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
   213
16627
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   214
test same-parent transplant with --log
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   215
16627
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   216
  $ hg clone -r 1 ../t ../sameparent
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   217
  adding changesets
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   218
  adding manifests
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   219
  adding file changes
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   220
  added 2 changesets with 2 changes to 2 files
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   221
  updating to branch default
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   222
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   223
  $ cd ../sameparent
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   224
  $ hg transplant --log -s ../prune 5
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   225
  searching for changes
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   226
  applying e234d668f844
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   227
  e234d668f844 transplanted to e07aea8ecf9c
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   228
  $ hg log --template '{rev} {parents} {desc}\n'
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   229
  2  b1
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   230
  (transplanted from e234d668f844e1b1a765f01db83a32c0c7bfa170)
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   231
  1  r2
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
   232
  0  r1
23452
86c0d8c1484f transplant: don't honor whitespace and format-changing diffopts
Siddharth Agarwal <sid0@fb.com>
parents: 23092
diff changeset
   233
remote transplant, and also test that transplant doesn't break with
86c0d8c1484f transplant: don't honor whitespace and format-changing diffopts
Siddharth Agarwal <sid0@fb.com>
parents: 23092
diff changeset
   234
format-breaking diffopts
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
   235
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   236
  $ hg clone -r 1 ../t ../remote
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   237
  adding changesets
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   238
  adding manifests
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   239
  adding file changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   240
  added 2 changesets with 2 changes to 2 files
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   241
  updating to branch default
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   242
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   243
  $ cd ../remote
23452
86c0d8c1484f transplant: don't honor whitespace and format-changing diffopts
Siddharth Agarwal <sid0@fb.com>
parents: 23092
diff changeset
   244
  $ hg --config diff.noprefix=True transplant --log -s ../t 2 4
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   245
  searching for changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   246
  applying 37a1297eb21b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   247
  37a1297eb21b transplanted to c19cf0ccb069
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   248
  applying a53251cdf717
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   249
  a53251cdf717 transplanted to f7fe5bf98525
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   250
  $ hg log --template '{rev} {parents} {desc}\n'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   251
  3  b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   252
  (transplanted from a53251cdf717679d1907b289f991534be05c997a)
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   253
  2  b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   254
  (transplanted from 37a1297eb21b3ef5c5d2ffac22121a0988ed9f21)
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   255
  1  r2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   256
  0  r1
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
   257
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   258
skip previous transplants
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   259
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   260
  $ hg transplant -s ../t -a -b 4
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   261
  searching for changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   262
  applying 722f4667af76
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   263
  722f4667af76 transplanted to 47156cd86c0b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   264
  $ hg log --template '{rev} {parents} {desc}\n'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   265
  4  b2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   266
  3  b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   267
  (transplanted from a53251cdf717679d1907b289f991534be05c997a)
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   268
  2  b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   269
  (transplanted from 37a1297eb21b3ef5c5d2ffac22121a0988ed9f21)
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   270
  1  r2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   271
  0  r1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   272
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   273
skip local changes transplanted to the source
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
   274
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   275
  $ echo b4 > b4
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   276
  $ hg ci -Amb4 -d '3 0'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   277
  adding b4
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   278
  $ hg clone ../t ../pullback
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   279
  updating to branch default
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   280
  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   281
  $ cd ../pullback
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   282
  $ hg transplant -s ../remote -a -b tip
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   283
  searching for changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   284
  applying 4333daefcb15
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   285
  4333daefcb15 transplanted to 5f42c04e07cc
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   286
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   287
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   288
remote transplant with pull
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   289
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   290
  $ hg -R ../t serve -p $HGPORT -d --pid-file=../t.pid
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   291
  $ cat ../t.pid >> $DAEMON_PIDS
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
   292
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   293
  $ hg clone -r 0 ../t ../rp
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   294
  adding changesets
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   295
  adding manifests
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   296
  adding file changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   297
  added 1 changesets with 1 changes to 1 files
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   298
  updating to branch default
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   299
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   300
  $ cd ../rp
25678
0c201666fdc6 transplant: update test to use hash for remote transplant
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23781
diff changeset
   301
  $ hg transplant -s http://localhost:$HGPORT/ 37a1297eb21b a53251cdf717
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   302
  searching for changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   303
  searching for changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   304
  adding changesets
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   305
  adding manifests
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   306
  adding file changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   307
  added 1 changesets with 1 changes to 1 files
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   308
  applying a53251cdf717
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   309
  a53251cdf717 transplanted to 8d9279348abb
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   310
  $ hg log --template '{rev} {parents} {desc}\n'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   311
  2  b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   312
  1  b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   313
  0  r1
3724
ea523d6f5f1a transplant: fix --continue; add --continue test
Brendan Cully <brendan@kublai.com>
parents: 3714
diff changeset
   314
18138
8ab0640c3090 bundlerepo: don't return the peer without bundlerepo from getremotechanges
Mads Kiilerich <madski@unity3d.com>
parents: 17539
diff changeset
   315
remote transplant without pull
25679
540cd0ddac49 transplant: only pull the transplanted revision (issue4692)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25678
diff changeset
   316
(It was using "2" and "4" (as the previous transplant used to) which referenced
25678
0c201666fdc6 transplant: update test to use hash for remote transplant
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23781
diff changeset
   317
revision different from one run to another)
18138
8ab0640c3090 bundlerepo: don't return the peer without bundlerepo from getremotechanges
Mads Kiilerich <madski@unity3d.com>
parents: 17539
diff changeset
   318
8ab0640c3090 bundlerepo: don't return the peer without bundlerepo from getremotechanges
Mads Kiilerich <madski@unity3d.com>
parents: 17539
diff changeset
   319
  $ hg pull -q http://localhost:$HGPORT/
25678
0c201666fdc6 transplant: update test to use hash for remote transplant
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23781
diff changeset
   320
  $ hg transplant -s http://localhost:$HGPORT/ 8d9279348abb 722f4667af76
18138
8ab0640c3090 bundlerepo: don't return the peer without bundlerepo from getremotechanges
Mads Kiilerich <madski@unity3d.com>
parents: 17539
diff changeset
   321
  skipping already applied revision 2:8d9279348abb
8ab0640c3090 bundlerepo: don't return the peer without bundlerepo from getremotechanges
Mads Kiilerich <madski@unity3d.com>
parents: 17539
diff changeset
   322
  applying 722f4667af76
8ab0640c3090 bundlerepo: don't return the peer without bundlerepo from getremotechanges
Mads Kiilerich <madski@unity3d.com>
parents: 17539
diff changeset
   323
  722f4667af76 transplanted to 76e321915884
8ab0640c3090 bundlerepo: don't return the peer without bundlerepo from getremotechanges
Mads Kiilerich <madski@unity3d.com>
parents: 17539
diff changeset
   324
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   325
transplant --continue
4036
ebf1a05f6479 Make test-transplant test pull case
Brendan Cully <brendan@kublai.com>
parents: 4034
diff changeset
   326
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   327
  $ hg init ../tc
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   328
  $ cd ../tc
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   329
  $ cat <<EOF > foo
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   330
  > foo
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   331
  > bar
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   332
  > baz
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   333
  > EOF
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   334
  $ echo toremove > toremove
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   335
  $ echo baz > baz
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   336
  $ hg ci -Amfoo
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   337
  adding baz
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   338
  adding foo
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   339
  adding toremove
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   340
  $ cat <<EOF > foo
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   341
  > foo2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   342
  > bar2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   343
  > baz2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   344
  > EOF
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   345
  $ rm toremove
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   346
  $ echo added > added
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   347
  $ hg ci -Amfoo2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   348
  adding added
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   349
  removing toremove
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   350
  $ echo bar > bar
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   351
  $ cat > baz <<EOF
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   352
  > before baz
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   353
  > baz
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   354
  > after baz
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   355
  > EOF
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   356
  $ hg ci -Ambar
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   357
  adding bar
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   358
  $ echo bar2 >> bar
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   359
  $ hg ci -mbar2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   360
  $ hg up 0
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   361
  3 files updated, 0 files merged, 2 files removed, 0 files unresolved
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   362
  $ echo foobar > foo
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   363
  $ hg ci -mfoobar
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   364
  created new head
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   365
  $ hg transplant 1:3
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   366
  applying 46ae92138f3c
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   367
  patching file foo
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   368
  Hunk #1 FAILED at 0
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   369
  1 out of 1 hunks FAILED -- saving rejects to file foo.rej
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   370
  patch failed to apply
12070
fddacca3202e Merge with stable
Martin Geisler <mg@lazybytes.net>
parents: 11800
diff changeset
   371
  abort: fix up the merge and run hg transplant --continue
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   372
  [255]
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   373
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   374
transplant -c shouldn't use an old changeset
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   375
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   376
  $ hg up -C
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   377
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   378
  $ rm added
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   379
  $ hg transplant 1
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   380
  applying 46ae92138f3c
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   381
  patching file foo
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   382
  Hunk #1 FAILED at 0
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   383
  1 out of 1 hunks FAILED -- saving rejects to file foo.rej
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   384
  patch failed to apply
12070
fddacca3202e Merge with stable
Martin Geisler <mg@lazybytes.net>
parents: 11800
diff changeset
   385
  abort: fix up the merge and run hg transplant --continue
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   386
  [255]
22252
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   387
  $ HGEDITOR="sh $TESTTMP/checkeditform.sh" hg transplant --continue -e
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   388
  HGEDITFORM=transplant.normal
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   389
  46ae92138f3c transplanted as 9159dada197d
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   390
  $ hg transplant 1:3
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   391
  skipping already applied revision 1:46ae92138f3c
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   392
  applying 9d6d6b5a8275
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   393
  9d6d6b5a8275 transplanted to 2d17a10c922f
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   394
  applying 1dab759070cf
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   395
  1dab759070cf transplanted to e06a69927eb0
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   396
  $ hg locate
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   397
  added
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   398
  bar
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   399
  baz
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   400
  foo
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   401
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   402
test multiple revisions and --continue
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   403
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   404
  $ hg up -qC 0
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   405
  $ echo bazbaz > baz
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   406
  $ hg ci -Am anotherbaz baz
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   407
  created new head
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   408
  $ hg transplant 1:3
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   409
  applying 46ae92138f3c
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   410
  46ae92138f3c transplanted to 1024233ea0ba
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   411
  applying 9d6d6b5a8275
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   412
  patching file baz
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   413
  Hunk #1 FAILED at 0
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   414
  1 out of 1 hunks FAILED -- saving rejects to file baz.rej
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   415
  patch failed to apply
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   416
  abort: fix up the merge and run hg transplant --continue
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   417
  [255]
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   418
  $ echo fixed > baz
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   419
  $ hg transplant --continue
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   420
  9d6d6b5a8275 transplanted as d80c49962290
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   421
  applying 1dab759070cf
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   422
  1dab759070cf transplanted to aa0ffe6bd5ae
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
   423
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   424
  $ cd ..
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   425
12399
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 12376
diff changeset
   426
Issue1111: Test transplant --merge
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   427
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   428
  $ hg init t1111
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   429
  $ cd t1111
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   430
  $ echo a > a
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   431
  $ hg ci -Am adda
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   432
  adding a
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   433
  $ echo b >> a
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   434
  $ hg ci -m appendb
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   435
  $ echo c >> a
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   436
  $ hg ci -m appendc
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   437
  $ hg up -C 0
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   438
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   439
  $ echo d >> a
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   440
  $ hg ci -m appendd
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   441
  created new head
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   442
21024
7731a2281cf0 spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents: 20269
diff changeset
   443
transplant
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   444
22252
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   445
  $ HGEDITOR="sh $TESTTMP/checkeditform.sh" hg transplant -m 1 -e
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   446
  applying 42dc4432fd35
22252
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   447
  HGEDITFORM=transplant.merge
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   448
  1:42dc4432fd35 merged at a9f4acbac129
22252
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   449
  $ hg update -q -C 2
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   450
  $ cat > a <<EOF
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   451
  > x
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   452
  > y
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   453
  > z
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   454
  > EOF
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   455
  $ hg commit -m replace
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   456
  $ hg update -q -C 4
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   457
  $ hg transplant -m 5
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   458
  applying 600a3cdcb41d
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   459
  patching file a
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   460
  Hunk #1 FAILED at 0
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   461
  1 out of 1 hunks FAILED -- saving rejects to file a.rej
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   462
  patch failed to apply
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   463
  abort: fix up the merge and run hg transplant --continue
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   464
  [255]
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   465
  $ HGEDITOR="sh $TESTTMP/checkeditform.sh" hg transplant --continue -e
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   466
  HGEDITFORM=transplant.merge
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   467
  600a3cdcb41d transplanted as a3f88be652e0
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
   468
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   469
  $ cd ..
6639
6334569c8caa localrepo: fix partial merge test (issue 1111)
Patrick Mezard <pmezard@gmail.com>
parents: 5384
diff changeset
   470
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   471
test transplant into empty repository
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   472
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   473
  $ hg init empty
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   474
  $ cd empty
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   475
  $ hg transplant -s ../t -b tip -a
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   476
  adding changesets
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   477
  adding manifests
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   478
  adding file changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   479
  added 4 changesets with 4 changes to 4 files
20020
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
   480
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
   481
test "--merge" causing pull from source repository on local host
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
   482
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
   483
  $ hg --config extensions.mq= -q strip 2
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
   484
  $ hg transplant -s ../t --merge tip
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
   485
  searching for changes
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
   486
  searching for changes
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
   487
  adding changesets
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
   488
  adding manifests
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
   489
  adding file changes
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
   490
  added 2 changesets with 2 changes to 2 files
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
   491
  applying a53251cdf717
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
   492
  4:a53251cdf717 merged at 4831f4dc831a
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
   493
20267
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   494
test interactive transplant
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   495
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   496
  $ hg --config extensions.strip= -q strip 0
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   497
  $ hg -R ../t log -G --template "{rev}:{node|short}"
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   498
  @  4:a53251cdf717
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   499
  |
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   500
  o  3:722f4667af76
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   501
  |
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   502
  o  2:37a1297eb21b
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   503
  |
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   504
  | o  1:d11e3596cc1a
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   505
  |/
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   506
  o  0:17ab29e464c6
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   507
  
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   508
  $ hg transplant -q --config ui.interactive=true -s ../t <<EOF
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   509
  > p
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   510
  > y
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   511
  > n
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   512
  > n
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   513
  > m
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   514
  > c
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   515
  > EOF
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   516
  0:17ab29e464c6
22589
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   517
  apply changeset? [ynmpcq?]: p
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   518
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
20267
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   519
  +++ b/r1	Thu Jan 01 00:00:00 1970 +0000
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   520
  @@ -0,0 +1,1 @@
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   521
  +r1
22589
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   522
  apply changeset? [ynmpcq?]: y
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   523
  1:d11e3596cc1a
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   524
  apply changeset? [ynmpcq?]: n
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   525
  2:37a1297eb21b
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   526
  apply changeset? [ynmpcq?]: n
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   527
  3:722f4667af76
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   528
  apply changeset? [ynmpcq?]: m
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   529
  4:a53251cdf717
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   530
  apply changeset? [ynmpcq?]: c
20267
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   531
  $ hg log -G --template "{node|short}"
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   532
  @    88be5dde5260
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   533
  |\
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   534
  | o  722f4667af76
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   535
  | |
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   536
  | o  37a1297eb21b
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   537
  |/
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   538
  o  17ab29e464c6
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   539
  
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   540
  $ hg transplant -q --config ui.interactive=true -s ../t <<EOF
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   541
  > x
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   542
  > ?
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   543
  > y
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   544
  > q
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   545
  > EOF
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   546
  1:d11e3596cc1a
22589
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   547
  apply changeset? [ynmpcq?]: x
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   548
  unrecognized response
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   549
  apply changeset? [ynmpcq?]: ?
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   550
  y: yes, transplant this changeset
20269
acb6cceaffd5 transplant: use "ui.extractchoices()" to show the list of available responses
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20268
diff changeset
   551
  n: no, skip this changeset
20267
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   552
  m: merge at this changeset
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   553
  p: show patch
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   554
  c: commit selected changesets
20269
acb6cceaffd5 transplant: use "ui.extractchoices()" to show the list of available responses
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20268
diff changeset
   555
  q: quit and cancel transplant
acb6cceaffd5 transplant: use "ui.extractchoices()" to show the list of available responses
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20268
diff changeset
   556
  ?: ? (show this help)
22589
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   557
  apply changeset? [ynmpcq?]: y
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   558
  4:a53251cdf717
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22252
diff changeset
   559
  apply changeset? [ynmpcq?]: q
20267
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   560
  $ hg heads --template "{node|short}\n"
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   561
  88be5dde5260
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
   562
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   563
  $ cd ..
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   564
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   565
16972
5efe9c6a34fe tests: add some missing #if's / hghave requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16912
diff changeset
   566
#if unix-permissions system-sh
5efe9c6a34fe tests: add some missing #if's / hghave requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16912
diff changeset
   567
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   568
test filter
8173
d3fb413667e5 transplant: remove the restriction that the destination be nonempty.
Jacob Lee <artdent@gmail.com>
parents: 8167
diff changeset
   569
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   570
  $ hg init filter
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   571
  $ cd filter
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   572
  $ cat <<'EOF' >test-filter
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   573
  > #!/bin/sh
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   574
  > sed 's/r1/r2/' $1 > $1.new
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   575
  > mv $1.new $1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   576
  > EOF
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   577
  $ chmod +x test-filter
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   578
  $ hg transplant -s ../t -b tip -a --filter ./test-filter
12376
97ffc68f71d3 tests: add glob matching for unified tests
Brodie Rao <brodie@bitheap.org>
parents: 12375
diff changeset
   579
  filtering * (glob)
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   580
  applying 17ab29e464c6
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   581
  17ab29e464c6 transplanted to e9ffc54ea104
12376
97ffc68f71d3 tests: add glob matching for unified tests
Brodie Rao <brodie@bitheap.org>
parents: 12375
diff changeset
   582
  filtering * (glob)
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   583
  applying 37a1297eb21b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   584
  37a1297eb21b transplanted to 348b36d0b6a5
12376
97ffc68f71d3 tests: add glob matching for unified tests
Brodie Rao <brodie@bitheap.org>
parents: 12375
diff changeset
   585
  filtering * (glob)
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   586
  applying 722f4667af76
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   587
  722f4667af76 transplanted to 0aa6979afb95
12376
97ffc68f71d3 tests: add glob matching for unified tests
Brodie Rao <brodie@bitheap.org>
parents: 12375
diff changeset
   588
  filtering * (glob)
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   589
  applying a53251cdf717
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   590
  a53251cdf717 transplanted to 14f8512272b5
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   591
  $ hg log --template '{rev} {parents} {desc}\n'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   592
  3  b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   593
  2  b2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   594
  1  b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   595
  0  r2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   596
  $ cd ..
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   597
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   598
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   599
test filter with failed patch
8173
d3fb413667e5 transplant: remove the restriction that the destination be nonempty.
Jacob Lee <artdent@gmail.com>
parents: 8167
diff changeset
   600
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   601
  $ cd filter
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   602
  $ hg up 0
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   603
  0 files updated, 0 files merged, 3 files removed, 0 files unresolved
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   604
  $ echo foo > b1
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 12070
diff changeset
   605
  $ hg ci -Am foo
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   606
  adding b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   607
  adding test-filter
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   608
  created new head
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   609
  $ hg transplant 1 --filter ./test-filter
12376
97ffc68f71d3 tests: add glob matching for unified tests
Brodie Rao <brodie@bitheap.org>
parents: 12375
diff changeset
   610
  filtering * (glob)
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   611
  applying 348b36d0b6a5
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   612
  file b1 already exists
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   613
  1 out of 1 hunks FAILED -- saving rejects to file b1.rej
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   614
  patch failed to apply
12070
fddacca3202e Merge with stable
Martin Geisler <mg@lazybytes.net>
parents: 11800
diff changeset
   615
  abort: fix up the merge and run hg transplant --continue
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
   616
  [255]
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   617
  $ cd ..
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   618
13579
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   619
test environment passed to filter
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   620
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   621
  $ hg init filter-environment
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   622
  $ cd filter-environment
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   623
  $ cat <<'EOF' >test-filter-environment
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   624
  > #!/bin/sh
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   625
  > echo "Transplant by $HGUSER" >> $1
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   626
  > echo "Transplant from rev $HGREVISION" >> $1
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   627
  > EOF
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   628
  $ chmod +x test-filter-environment
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   629
  $ hg transplant -s ../t --filter ./test-filter-environment 0
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   630
  filtering * (glob)
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   631
  applying 17ab29e464c6
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   632
  17ab29e464c6 transplanted to 5190e68026a0
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   633
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   634
  $ hg log --template '{rev} {parents} {desc}\n'
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   635
  0  r1
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   636
  Transplant by test
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   637
  Transplant from rev 17ab29e464c6ca53e329470efe2a9918ac617a6f
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   638
  $ cd ..
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
   639
13789
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
   640
test transplant with filter handles invalid changelog
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
   641
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
   642
  $ hg init filter-invalid-log
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
   643
  $ cd filter-invalid-log
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
   644
  $ cat <<'EOF' >test-filter-invalid-log
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
   645
  > #!/bin/sh
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
   646
  > echo "" > $1
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
   647
  > EOF
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
   648
  $ chmod +x test-filter-invalid-log
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
   649
  $ hg transplant -s ../t --filter ./test-filter-invalid-log 0
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
   650
  filtering * (glob)
13790
c0ed76b5056d Fix transplant error message to correspond with test
Brendan Cully <brendan@kublai.com>
parents: 13789
diff changeset
   651
  abort: filter corrupted changeset (no user or date)
13789
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
   652
  [255]
16912
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 16627
diff changeset
   653
  $ cd ..
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   654
16972
5efe9c6a34fe tests: add some missing #if's / hghave requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16912
diff changeset
   655
#endif
5efe9c6a34fe tests: add some missing #if's / hghave requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16912
diff changeset
   656
5efe9c6a34fe tests: add some missing #if's / hghave requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16912
diff changeset
   657
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   658
test with a win32ext like setup (differing EOLs)
8811
8b35b08724eb Make mq, record and transplant honor patch.eol
Patrick Mezard <pmezard@gmail.com>
parents: 8518
diff changeset
   659
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   660
  $ hg init twin1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   661
  $ cd twin1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   662
  $ echo a > a
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   663
  $ echo b > b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   664
  $ echo b >> b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   665
  $ hg ci -Am t
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   666
  adding a
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   667
  adding b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   668
  $ echo a > b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   669
  $ echo b >> b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   670
  $ hg ci -m changeb
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   671
  $ cd ..
9995
eba6c8687fd2 transplant: fix small bug when a patch fails while using --filter
Sune Foldager <cryo@cyanite.org>
parents: 8811
diff changeset
   672
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   673
  $ hg init twin2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   674
  $ cd twin2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   675
  $ echo '[patch]' >> .hg/hgrc
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   676
  $ echo 'eol = crlf' >> .hg/hgrc
22947
c63a09b6b337 tests: use $PYTHON instead of hardcoding python
Augie Fackler <raf@durin42.com>
parents: 22589
diff changeset
   677
  $ $PYTHON -c "file('b', 'wb').write('b\r\nb\r\n')"
14012
b247123d71f6 test-transplant: fix missing file addition
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   678
  $ hg ci -Am addb
b247123d71f6 test-transplant: fix missing file addition
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   679
  adding b
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   680
  $ hg transplant -s ../twin1 tip
14012
b247123d71f6 test-transplant: fix missing file addition
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   681
  searching for changes
b247123d71f6 test-transplant: fix missing file addition
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   682
  warning: repository is unrelated
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   683
  applying 2e849d776c17
14012
b247123d71f6 test-transplant: fix missing file addition
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
   684
  2e849d776c17 transplanted to 8e65bebc063e
12943
7439ea4146f8 tests: use (esc) instead of other kinds of string escaping
Mads Kiilerich <mads@kiilerich.com>
parents: 12847
diff changeset
   685
  $ cat b
7439ea4146f8 tests: use (esc) instead of other kinds of string escaping
Mads Kiilerich <mads@kiilerich.com>
parents: 12847
diff changeset
   686
  a\r (esc)
7439ea4146f8 tests: use (esc) instead of other kinds of string escaping
Mads Kiilerich <mads@kiilerich.com>
parents: 12847
diff changeset
   687
  b\r (esc)
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
   688
  $ cd ..
16400
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   689
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   690
test transplant with merge changeset is skipped
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   691
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   692
  $ hg init merge1a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   693
  $ cd merge1a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   694
  $ echo a > a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   695
  $ hg ci -Am a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   696
  adding a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   697
  $ hg branch b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   698
  marked working directory as branch b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   699
  (branches are permanent and global, did you want a bookmark?)
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   700
  $ hg ci -m branchb
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   701
  $ echo b > b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   702
  $ hg ci -Am b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   703
  adding b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   704
  $ hg update default
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   705
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   706
  $ hg merge b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   707
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   708
  (branch merge, don't forget to commit)
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   709
  $ hg ci -m mergeb
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   710
  $ cd ..
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   711
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   712
  $ hg init merge1b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   713
  $ cd merge1b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   714
  $ hg transplant -s ../merge1a tip
16912
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 16627
diff changeset
   715
  $ cd ..
16400
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   716
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   717
test transplant with merge changeset accepts --parent
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   718
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   719
  $ hg init merge2a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   720
  $ cd merge2a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   721
  $ echo a > a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   722
  $ hg ci -Am a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   723
  adding a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   724
  $ hg branch b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   725
  marked working directory as branch b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   726
  (branches are permanent and global, did you want a bookmark?)
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   727
  $ hg ci -m branchb
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   728
  $ echo b > b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   729
  $ hg ci -Am b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   730
  adding b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   731
  $ hg update default
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   732
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   733
  $ hg merge b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   734
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   735
  (branch merge, don't forget to commit)
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   736
  $ hg ci -m mergeb
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   737
  $ cd ..
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   738
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   739
  $ hg init merge2b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   740
  $ cd merge2b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   741
  $ hg transplant -s ../merge2a --parent 0 tip
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   742
  applying be9f9b39483f
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
   743
  be9f9b39483f transplanted to 9959e51f94d1
16912
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 16627
diff changeset
   744
  $ cd ..
17319
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   745
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   746
test transplanting a patch turning into a no-op
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   747
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   748
  $ hg init binarysource
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   749
  $ cd binarysource
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   750
  $ echo a > a
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   751
  $ hg ci -Am adda a
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   752
  >>> file('b', 'wb').write('\0b1')
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   753
  $ hg ci -Am addb b
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   754
  >>> file('b', 'wb').write('\0b2')
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   755
  $ hg ci -m changeb b
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   756
  $ cd ..
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   757
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   758
  $ hg clone -r0 binarysource binarydest
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   759
  adding changesets
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   760
  adding manifests
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   761
  adding file changes
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   762
  added 1 changesets with 1 changes to 1 files
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   763
  updating to branch default
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   764
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   765
  $ cd binarydest
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   766
  $ cp ../binarysource/b b
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   767
  $ hg ci -Am addb2 b
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   768
  $ hg transplant -s ../binarysource 2
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   769
  searching for changes
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   770
  applying 7a7d57e15850
17320
0c3c65c0d3fc transplant: fix emptied changeset message
Patrick Mezard <patrick@mezard.eu>
parents: 17319
diff changeset
   771
  skipping emptied changeset 7a7d57e15850
23781
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
   772
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
   773
Test empty result in --continue
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
   774
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
   775
  $ hg transplant -s ../binarysource 1
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
   776
  searching for changes
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
   777
  applying 645035761929
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
   778
  file b already exists
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
   779
  1 out of 1 hunks FAILED -- saving rejects to file b.rej
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
   780
  patch failed to apply
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
   781
  abort: fix up the merge and run hg transplant --continue
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
   782
  [255]
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
   783
  $ hg status
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
   784
  ? b.rej
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
   785
  $ hg transplant --continue
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
   786
  645035761929 skipped due to empty diff
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
   787
17319
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   788
  $ cd ..
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
   789
17539
bc7377160fa7 tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents: 17320
diff changeset
   790
Explicitly kill daemons to let the test exit on Windows
bc7377160fa7 tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents: 17320
diff changeset
   791
25474
8c14f87bd0ae tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents: 25472
diff changeset
   792
  $ killdaemons.py
17539
bc7377160fa7 tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents: 17320
diff changeset
   793
25757
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   794
Test that patch-ed files are treated as "modified", when transplant is
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   795
aborted by failure of patching, even if none of mode, size and
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   796
timestamp of them isn't changed on the filesystem (see also issue4583)
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   797
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   798
  $ cd t
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   799
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   800
  $ cat > $TESTTMP/abort.py <<EOF
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   801
  > # emulate that patch.patch() is aborted at patching on "abort" file
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   802
  > from mercurial import extensions, patch as patchmod
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   803
  > def patch(orig, ui, repo, patchname,
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   804
  >           strip=1, prefix='', files=None,
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   805
  >           eolmode='strict', similarity=0):
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   806
  >     if files is None:
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   807
  >         files = set()
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   808
  >     r = orig(ui, repo, patchname,
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   809
  >         strip=strip, prefix=prefix, files=files,
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   810
  >         eolmode=eolmode, similarity=similarity)
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   811
  >     if 'abort' in files:
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   812
  >         raise patchmod.PatchError('intentional error while patching')
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   813
  >     return r
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   814
  > def extsetup(ui):
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   815
  >     extensions.wrapfunction(patchmod, 'patch', patch)
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   816
  > EOF
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   817
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   818
  $ echo X1 > r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   819
  $ hg diff --nodates r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   820
  diff -r a53251cdf717 r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   821
  --- a/r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   822
  +++ b/r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   823
  @@ -1,1 +1,1 @@
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   824
  -r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   825
  +X1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   826
  $ hg commit -m "X1 as r1"
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   827
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   828
  $ echo 'marking to abort patching' > abort
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   829
  $ hg add abort
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   830
  $ echo Y1 > r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   831
  $ hg diff --nodates r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   832
  diff -r 22c515968f13 r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   833
  --- a/r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   834
  +++ b/r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   835
  @@ -1,1 +1,1 @@
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   836
  -X1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   837
  +Y1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   838
  $ hg commit -m "Y1 as r1"
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   839
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   840
  $ hg update -q -C d11e3596cc1a
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   841
  $ cat r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   842
  r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   843
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   844
  $ cat >> .hg/hgrc <<EOF
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   845
  > [fakedirstatewritetime]
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   846
  > # emulate invoking dirstate.write() via repo.status() or markcommitted()
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   847
  > # at 2000-01-01 00:00
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   848
  > fakenow = 200001010000
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   849
  > 
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   850
  > # emulate invoking patch.internalpatch() at 2000-01-01 00:00
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   851
  > [fakepatchtime]
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   852
  > fakenow = 200001010000
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   853
  > 
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   854
  > [extensions]
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   855
  > fakedirstatewritetime = $TESTDIR/fakedirstatewritetime.py
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   856
  > fakepatchtime = $TESTDIR/fakepatchtime.py
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   857
  > abort =  $TESTTMP/abort.py
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   858
  > EOF
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   859
  $ hg transplant "22c515968f13::"
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   860
  applying 22c515968f13
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   861
  22c515968f13 transplanted to * (glob)
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   862
  applying e38700ba9dd3
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   863
  intentional error while patching
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   864
  abort: fix up the merge and run hg transplant --continue
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   865
  [255]
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   866
  $ cat >> .hg/hgrc <<EOF
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   867
  > [hooks]
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   868
  > fakedirstatewritetime = !
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   869
  > fakepatchtime = !
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   870
  > abort = !
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   871
  > EOF
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   872
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   873
  $ cat r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   874
  Y1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   875
  $ hg debugstate | grep ' r1$'
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   876
  n 644          3 unset               r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   877
  $ hg status -A r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   878
  M r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   879
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
   880
  $ cd ..