annotate tests/test-transplant.t @ 35569:964212780daf

rust: implementation of `hg` This commit provides a mostly-working implementation of the `hg` script in Rust along with scaffolding to support Rust in the repository. If you are familiar with Rust, the contents of the added rust/ directory should be pretty straightforward. We create an "hgcli" package that implements a binary application to run Mercurial. The output of this package is an "hg" binary. Our Rust `hg` (henceforth "rhg") essentially is a port of the existing `hg` Python script. The main difference is the creation of the embedded CPython interpreter is handled by the binary itself instead of relying on the shebang. In that sense, rhg is more similar to the "exe wrapper" we currently use on Windows. However, unlike the exe wrapper, rhg does not call the `hg` Python script. Instead, it uses the CPython APIs to import mercurial modules and call appropriate functions. The amount of code here is surprisingly small. It is my intent to replace the existing C-based exe wrapper with rhg. Preferably in the next Mercurial release. This should be achievable - at least for some Mercurial distributions. The future/timeline for rhg on other platforms is less clear. We already ship a hg.exe on Windows. So if we get the quirks with Rust worked out, shipping a Rust-based hg.exe should hopefully not be too contentious. Now onto the implementation. We're using python27-sys and the cpython crates for talking to the CPython API. We currently don't use too much functionality of the cpython crate and could have probably cut it out. However, it does provide a reasonable abstraction over unsafe {} CPython function calls. While we still have our fair share of those, at least we're not dealing with too much refcounting, error checking, etc. So I think the use of the cpython crate is justified. Plus, there is not-yet-implemented functionality that could benefit from cpython. I see our use of this crate only increasing. The cpython and python27-sys crates are not without their issues. The cpython crate didn't seem to account for the embedding use case in its design. Instead, it seems to assume that you are building a Python extension. It is making some questionable decisions around certain CPython APIs. For example, it insists that PyEval_ThreadsInitialized() is called and that the Python code likely isn't the main thread in the underlying application. It is also missing some functionality that is important for embedded use cases (such as exporting the path to the Python interpreter from its build script). After spending several hours trying to wrangle python27-sys and cpython, I gave up and forked the project on GitHub. Our Cargo.toml tracks this fork. I'm optimistic that the upstream project will accept our contributions and we can eventually unfork. There is a non-trivial amount of code in our custom Cargo build script. Our build.rs (which is called as part of building the hgcli crate): * Validates that the Python interpreter that was detected by the python27-sys crate provides a shared library (we only support shared library linking at this time - although this restriction could be loosened). * Validates that the Python is built with UCS-4 support. This ensures maximum Unicode compatibility. * Exports variables to the crate build allowing the built crate to e.g. find the path to the Python interpreter. The produced rhg should be considered alpha quality. There are several known deficiencies. Many of these are documented with inline TODOs. Probably the biggest limitation of rhg is that it assumes it is running from the ./rust/target/<target> directory of a source distribution. So, rhg is currently not very practical for real-world use. But, if you can `cargo build` it, running the binary *should* yield a working Mercurial CLI. In order to support using rhg with the test harness, we needed to hack up run-tests.py so the path to Mercurial's Python files is set properly. The change is extremely hacky and is only intended to be a stop-gap until the test harness gains first-class support for installing rhg. This will likely occur after we support running rhg outside the source directory. Despite its officially alpha quality, rhg copes extremely well with the test harness (at least on Linux). Using `run-tests.py --with-hg ../rust/target/debug/hg`, I only encounter the following failures: * test-run-tests.t -- Warnings emitted about using an unexpected Mercurial library. This is due to the hacky nature of setting the Python directory when run-tests.py detected rhg. * test-devel-warnings.t -- Expected stack trace missing frame for `hg` (This is expected since we no longer have an `hg` script!) * test-convert.t -- Test running `$PYTHON "$BINDIR"/hg`, which obviously assumes `hg` is a Python script. * test-merge-tools.t -- Same assumption about `hg` being executable with Python. * test-http-bad-server.t -- Seeing exit code 255 instead of 1 around line 358. * test-blackbox.t -- Exit code 255 instead of 1. * test-basic.t -- Exit code 255 instead of 1. It certainly looks like we have a bug around exit code handling. I don't think it is severe enough to hold up review and landing of this initial implementation. Perfect is the enemy of good. Differential Revision: https://phab.mercurial-scm.org/D1581
author Gregory Szorc <gregory.szorc@gmail.com>
date Wed, 10 Jan 2018 08:53:22 -0800
parents eb586ed5d8ce
children 03e921942163
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
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
27666
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
10 $ hg transplant
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
11 abort: no source URL, branch revision, or revision list provided
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
12 [255]
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
13 $ hg transplant --continue --all
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
14 abort: --continue is incompatible with --branch, --all and --merge
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
15 [255]
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
16 $ hg transplant --all tip
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
17 abort: --all requires a branch revision
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
18 [255]
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
19 $ hg transplant --all --branch default tip
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
20 abort: --all is incompatible with a revision list
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
21 [255]
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
22 $ echo r1 > r1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
23 $ hg ci -Amr1 -d'0 0'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
24 adding r1
27666
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
25 $ hg co -q null
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
26 $ hg transplant tip
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
27 abort: no revision checked out
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
28 [255]
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
29 $ hg up -q
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
30 $ echo r2 > r2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
31 $ hg ci -Amr2 -d'1 0'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
32 adding r2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
33 $ hg up 0
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
34 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
35
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
36 $ echo b1 > b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
37 $ hg ci -Amb1 -d '0 0'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
38 adding b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
39 created new head
27666
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
40 $ hg merge 1
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
41 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
42 (branch merge, don't forget to commit)
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
43 $ hg transplant 1
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
44 abort: outstanding uncommitted merges
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
45 [255]
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
46 $ hg up -qC tip
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
47 $ echo b0 > b1
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
48 $ hg transplant 1
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
49 abort: outstanding local changes
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
50 [255]
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
51 $ hg up -qC tip
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
52 $ echo b2 > b2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
53 $ hg ci -Amb2 -d '1 0'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
54 adding b2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
55 $ echo b3 > b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
56 $ hg ci -Amb3 -d '2 0'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
57 adding b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
58
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
59 $ hg log --template '{rev} {parents} {desc}\n'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
60 4 b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
61 3 b2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
62 2 0:17ab29e464c6 b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
63 1 r2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
64 0 r1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
65
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
66 $ hg clone . ../rebase
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
67 updating to branch default
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
68 4 files updated, 0 files merged, 0 files removed, 0 files unresolved
27666
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
69 $ hg init ../emptydest
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
70 $ cd ../emptydest
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
71 $ hg transplant --source=../t > /dev/null
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
72 $ cd ../rebase
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
73
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
74 $ hg up -C 1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
75 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
76
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
77 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
78 (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
79
21411
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
80 $ HGEDITOR=cat hg transplant -a -b tip
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
81 applying 37a1297eb21b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
82 37a1297eb21b transplanted to e234d668f844
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
83 applying 722f4667af76
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
84 722f4667af76 transplanted to 539f377d78df
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
85 applying a53251cdf717
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
86 a53251cdf717 transplanted to ffd6818a3975
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
87 $ hg log --template '{rev} {parents} {desc}\n'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
88 7 b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
89 6 b2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
90 5 1:d11e3596cc1a b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
91 4 b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
92 3 b2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
93 2 0:17ab29e464c6 b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
94 1 r2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
95 0 r1
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
96
31452
52dabcc49968 templatekw: make join() escape values of extras (BC) (issue5504)
Yuya Nishihara <yuya@tcha.org>
parents: 30786
diff changeset
97 test format of transplant_source
52dabcc49968 templatekw: make join() escape values of extras (BC) (issue5504)
Yuya Nishihara <yuya@tcha.org>
parents: 30786
diff changeset
98
52dabcc49968 templatekw: make join() escape values of extras (BC) (issue5504)
Yuya Nishihara <yuya@tcha.org>
parents: 30786
diff changeset
99 $ hg log -r7 --debug | grep transplant_source
52dabcc49968 templatekw: make join() escape values of extras (BC) (issue5504)
Yuya Nishihara <yuya@tcha.org>
parents: 30786
diff changeset
100 extra: transplant_source=\xa52Q\xcd\xf7\x17g\x9d\x19\x07\xb2\x89\xf9\x91SK\xe0\\\x99z
52dabcc49968 templatekw: make join() escape values of extras (BC) (issue5504)
Yuya Nishihara <yuya@tcha.org>
parents: 30786
diff changeset
101 $ hg log -r7 -T '{extras}\n'
52dabcc49968 templatekw: make join() escape values of extras (BC) (issue5504)
Yuya Nishihara <yuya@tcha.org>
parents: 30786
diff changeset
102 branch=defaulttransplant_source=\xa52Q\xcd\xf7\x17g\x9d\x19\x07\xb2\x89\xf9\x91SK\xe0\\\x99z
52dabcc49968 templatekw: make join() escape values of extras (BC) (issue5504)
Yuya Nishihara <yuya@tcha.org>
parents: 30786
diff changeset
103 $ hg log -r7 -T '{join(extras, " ")}\n'
52dabcc49968 templatekw: make join() escape values of extras (BC) (issue5504)
Yuya Nishihara <yuya@tcha.org>
parents: 30786
diff changeset
104 branch=default transplant_source=\xa52Q\xcd\xf7\x17g\x9d\x19\x07\xb2\x89\xf9\x91SK\xe0\\\x99z
52dabcc49968 templatekw: make join() escape values of extras (BC) (issue5504)
Yuya Nishihara <yuya@tcha.org>
parents: 30786
diff changeset
105
12811
0e284735e65b test-transplant: test transplanted() revset
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
106 test transplanted revset
0e284735e65b test-transplant: test transplanted() revset
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
107
0e284735e65b test-transplant: test transplanted() revset
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
108 $ hg log -r 'transplanted()' --template '{rev} {parents} {desc}\n'
0e284735e65b test-transplant: test transplanted() revset
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
109 5 1:d11e3596cc1a b1
0e284735e65b test-transplant: test transplanted() revset
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
110 6 b2
0e284735e65b test-transplant: test transplanted() revset
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
111 7 b3
27666
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
112 $ hg log -r 'transplanted(head())' --template '{rev} {parents} {desc}\n'
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
113 7 b3
30786
e2a6f383d314 tests: use "hg help revisions.<predicate>" instead of grepping
Martin von Zweigbergk <martinvonz@google.com>
parents: 28549
diff changeset
114 $ hg help revisions.transplanted
14211
b00ab6890fe9 transplant: fix revset doc
Idan Kamara <idankk86@gmail.com>
parents: 14012
diff changeset
115 "transplanted([set])"
b00ab6890fe9 transplant: fix revset doc
Idan Kamara <idankk86@gmail.com>
parents: 14012
diff changeset
116 Transplanted changesets in set, or all transplanted changesets.
30786
e2a6f383d314 tests: use "hg help revisions.<predicate>" instead of grepping
Martin von Zweigbergk <martinvonz@google.com>
parents: 28549
diff changeset
117
12811
0e284735e65b test-transplant: test transplanted() revset
Patrick Mezard <pmezard@gmail.com>
parents: 12399
diff changeset
118
21024
7731a2281cf0 spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents: 20269
diff changeset
119 test transplanted keyword
13689
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
120
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
121 $ hg log --template '{rev} {transplanted}\n'
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
122 7 a53251cdf717679d1907b289f991534be05c997a
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
123 6 722f4667af767100cb15b6a79324bf8abbfe1ef4
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
124 5 37a1297eb21b3ef5c5d2ffac22121a0988ed9f21
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
125 4
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
126 3
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
127 2
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
128 1
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
129 0
65399579da68 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com>
parents: 13579
diff changeset
130
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
131 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
132 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
133 (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
134
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
135 $ hg clone -q . ../destination
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
136 $ cd ../destination
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
137 $ hg up -Cq 0
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
138 $ hg branch -q b4
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
139 $ 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
140 $ 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
141 A b3
22252
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
142 $ 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
143 > env | grep HGEDITFORM
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
144 > true
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
145 > 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
146 $ 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
147 > 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
148 > 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
149 > 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
150 $ 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
151 applying ffd6818a3975
22252
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
152 HGEDITFORM=transplant.normal
21411
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
153 b3
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
154
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
155
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
156 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
157 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
158 HG: --
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
159 HG: user: test
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
160 HG: branch 'b4'
afff78be4361 transplant: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
161 HG: added b3
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
162 ffd6818a3975 transplanted to 502236fa76bb
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
163
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
164
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
165 $ hg log -r 'destination()'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
166 changeset: 5:e234d668f844
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
167 parent: 1:d11e3596cc1a
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
168 user: test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
169 date: Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
170 summary: b1
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
171
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
172 changeset: 6:539f377d78df
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
173 user: test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
174 date: Thu Jan 01 00:00:01 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
175 summary: b2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
176
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
177 changeset: 7:ffd6818a3975
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
178 user: test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
179 date: Thu Jan 01 00:00:02 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
180 summary: b3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
181
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
182 changeset: 9:502236fa76bb
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
183 branch: b4
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
184 tag: tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
185 user: test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
186 date: Thu Jan 01 00:00:02 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
187 summary: b3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
188
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
189 $ hg log -r 'destination(a53251cdf717)'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
190 changeset: 7:ffd6818a3975
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
191 user: test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
192 date: Thu Jan 01 00:00:02 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
193 summary: b3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
194
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
195 changeset: 9:502236fa76bb
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
196 branch: b4
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
197 tag: tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
198 user: test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
199 date: Thu Jan 01 00:00:02 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
200 summary: b3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
201
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
202
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
203 test subset parameter in reverse order
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
204 $ hg log -r 'reverse(all()) and destination(a53251cdf717)'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
205 changeset: 9:502236fa76bb
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
206 branch: b4
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
207 tag: tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
208 user: test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
209 date: Thu Jan 01 00:00:02 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
210 summary: b3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
211
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
212 changeset: 7:ffd6818a3975
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
213 user: test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
214 date: Thu Jan 01 00:00:02 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
215 summary: b3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
216
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
217
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
218 back to the original dir
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
219 $ cd ../rebase
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 16972
diff changeset
220
15204
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
221 rollback the transplant
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
222 $ hg rollback
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
223 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
224 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
225 $ hg tip -q
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
226 4:a53251cdf717
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
227 $ hg parents -q
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
228 1:d11e3596cc1a
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
229 $ hg status
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
230 ? b1
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
231 ? b2
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
232 ? b3
3ce9b1a7538b transplant: wrap a transaction around the whole command
Greg Ward <greg@gerg.ca>
parents: 14223
diff changeset
233
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
234 $ hg clone ../t ../prune
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
235 updating to branch default
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
236 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
237 $ cd ../prune
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
238
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
239 $ hg up -C 1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
240 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
241
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
242 rebase b onto r1, skipping b2
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
243
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
244 $ hg transplant -a -b tip -p 3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
245 applying 37a1297eb21b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
246 37a1297eb21b transplanted to e234d668f844
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
247 applying a53251cdf717
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
248 a53251cdf717 transplanted to 7275fda4d04f
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
249 $ hg log --template '{rev} {parents} {desc}\n'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
250 6 b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
251 5 1:d11e3596cc1a b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
252 4 b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
253 3 b2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
254 2 0:17ab29e464c6 b1
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
16627
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
258 test same-parent transplant with --log
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
259
16627
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
260 $ hg clone -r 1 ../t ../sameparent
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
261 adding changesets
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
262 adding manifests
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
263 adding file changes
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
264 added 2 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34251
diff changeset
265 new changesets 17ab29e464c6:d11e3596cc1a
16627
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
266 updating to branch default
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
267 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
268 $ cd ../sameparent
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
269 $ hg transplant --log -s ../prune 5
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
270 searching for changes
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
271 applying e234d668f844
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
272 e234d668f844 transplanted to e07aea8ecf9c
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
273 $ hg log --template '{rev} {parents} {desc}\n'
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
274 2 b1
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
275 (transplanted from e234d668f844e1b1a765f01db83a32c0c7bfa170)
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
276 1 r2
38c45a99be0b transplant: manually transplant pullable changesets with --log
Levi Bard <levi@unity3d.com>
parents: 16507
diff changeset
277 0 r1
23452
86c0d8c1484f transplant: don't honor whitespace and format-changing diffopts
Siddharth Agarwal <sid0@fb.com>
parents: 23092
diff changeset
278 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
279 format-breaking diffopts
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
280
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
281 $ hg clone -r 1 ../t ../remote
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
282 adding changesets
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
283 adding manifests
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
284 adding file changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
285 added 2 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34251
diff changeset
286 new changesets 17ab29e464c6:d11e3596cc1a
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
287 updating to branch default
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
288 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
289 $ cd ../remote
23452
86c0d8c1484f transplant: don't honor whitespace and format-changing diffopts
Siddharth Agarwal <sid0@fb.com>
parents: 23092
diff changeset
290 $ 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
291 searching for changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
292 applying 37a1297eb21b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
293 37a1297eb21b transplanted to c19cf0ccb069
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
294 applying a53251cdf717
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
295 a53251cdf717 transplanted to f7fe5bf98525
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
296 $ hg log --template '{rev} {parents} {desc}\n'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
297 3 b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
298 (transplanted from a53251cdf717679d1907b289f991534be05c997a)
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
299 2 b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
300 (transplanted from 37a1297eb21b3ef5c5d2ffac22121a0988ed9f21)
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
301 1 r2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
302 0 r1
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
303
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
304 skip previous transplants
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
305
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
306 $ hg transplant -s ../t -a -b 4
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
307 searching for changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
308 applying 722f4667af76
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
309 722f4667af76 transplanted to 47156cd86c0b
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 4 b2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
312 3 b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
313 (transplanted from a53251cdf717679d1907b289f991534be05c997a)
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
314 2 b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
315 (transplanted from 37a1297eb21b3ef5c5d2ffac22121a0988ed9f21)
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
316 1 r2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
317 0 r1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
318
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
319 skip local changes transplanted to the source
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
320
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
321 $ echo b4 > b4
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
322 $ hg ci -Amb4 -d '3 0'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
323 adding b4
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
324 $ hg clone ../t ../pullback
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
325 updating to branch default
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
326 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
327 $ cd ../pullback
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
328 $ hg transplant -s ../remote -a -b tip
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
329 searching for changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
330 applying 4333daefcb15
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
331 4333daefcb15 transplanted to 5f42c04e07cc
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
332
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
333
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
334 remote transplant with pull
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
335
28549
e01bd7385f4f tests: reorder hg serve commands
Jun Wu <quark@fb.com>
parents: 28029
diff changeset
336 $ hg serve -R ../t -p $HGPORT -d --pid-file=../t.pid
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
337 $ cat ../t.pid >> $DAEMON_PIDS
3714
198173f3957c Add transplant extension
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
338
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
339 $ hg clone -r 0 ../t ../rp
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
340 adding changesets
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
341 adding manifests
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
342 adding file changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
343 added 1 changesets with 1 changes to 1 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34251
diff changeset
344 new changesets 17ab29e464c6
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
345 updating to branch default
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
346 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
347 $ 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
348 $ hg transplant -s http://localhost:$HGPORT/ 37a1297eb21b a53251cdf717
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
349 searching for changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
350 searching for changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
351 adding changesets
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
352 adding manifests
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
353 adding file changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
354 added 1 changesets with 1 changes to 1 files
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
355 applying a53251cdf717
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
356 a53251cdf717 transplanted to 8d9279348abb
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34251
diff changeset
357 new changesets 37a1297eb21b:8d9279348abb
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
358 $ hg log --template '{rev} {parents} {desc}\n'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
359 2 b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
360 1 b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
361 0 r1
3724
ea523d6f5f1a transplant: fix --continue; add --continue test
Brendan Cully <brendan@kublai.com>
parents: 3714
diff changeset
362
18138
8ab0640c3090 bundlerepo: don't return the peer without bundlerepo from getremotechanges
Mads Kiilerich <madski@unity3d.com>
parents: 17539
diff changeset
363 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
364 (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
365 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
366
8ab0640c3090 bundlerepo: don't return the peer without bundlerepo from getremotechanges
Mads Kiilerich <madski@unity3d.com>
parents: 17539
diff changeset
367 $ 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
368 $ 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
369 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
370 applying 722f4667af76
8ab0640c3090 bundlerepo: don't return the peer without bundlerepo from getremotechanges
Mads Kiilerich <madski@unity3d.com>
parents: 17539
diff changeset
371 722f4667af76 transplanted to 76e321915884
8ab0640c3090 bundlerepo: don't return the peer without bundlerepo from getremotechanges
Mads Kiilerich <madski@unity3d.com>
parents: 17539
diff changeset
372
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
373 transplant --continue
4036
ebf1a05f6479 Make test-transplant test pull case
Brendan Cully <brendan@kublai.com>
parents: 4034
diff changeset
374
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
375 $ hg init ../tc
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
376 $ cd ../tc
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
377 $ cat <<EOF > foo
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
378 > foo
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
379 > bar
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
380 > baz
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
381 > EOF
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
382 $ echo toremove > toremove
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
383 $ echo baz > baz
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
384 $ hg ci -Amfoo
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
385 adding baz
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
386 adding foo
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
387 adding toremove
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
388 $ cat <<EOF > foo
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
389 > foo2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
390 > bar2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
391 > baz2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
392 > EOF
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
393 $ rm toremove
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
394 $ echo added > added
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
395 $ hg ci -Amfoo2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
396 adding added
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
397 removing toremove
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
398 $ echo bar > bar
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
399 $ cat > baz <<EOF
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
400 > before baz
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
401 > baz
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
402 > after baz
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
403 > EOF
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
404 $ hg ci -Ambar
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
405 adding bar
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
406 $ echo bar2 >> bar
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
407 $ hg ci -mbar2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
408 $ hg up 0
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
409 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
410 $ echo foobar > foo
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
411 $ hg ci -mfoobar
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
412 created new head
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
413 $ hg transplant 1:3
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
414 applying 46ae92138f3c
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
415 patching file foo
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
416 Hunk #1 FAILED at 0
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
417 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
418 patch failed to apply
27676
1c48f348f2d0 transplant: correct language to use working directory
timeless <timeless@mozdev.org>
parents: 27666
diff changeset
419 abort: fix up the working directory and run hg transplant --continue
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
420 [255]
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
421
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
422 transplant -c shouldn't use an old changeset
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
423
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
424 $ hg up -C
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
425 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
32698
1b5c61d38a52 update: show the commit to which we updated in case of multiple heads (BC)
Pulkit Goyal <7895pulkit@gmail.com>
parents: 31452
diff changeset
426 updated to "e8643552fde5: foobar"
28029
72072cfc7e91 update: warn about other topological heads on bare update
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 27678
diff changeset
427 1 other heads for branch "default"
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
428 $ rm added
27677
128ef8828ed5 transplant: only use checkunfinished if not continue
timeless <timeless@mozdev.org>
parents: 27676
diff changeset
429 $ hg transplant --continue
128ef8828ed5 transplant: only use checkunfinished if not continue
timeless <timeless@mozdev.org>
parents: 27676
diff changeset
430 abort: no transplant to continue
128ef8828ed5 transplant: only use checkunfinished if not continue
timeless <timeless@mozdev.org>
parents: 27676
diff changeset
431 [255]
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
432 $ hg transplant 1
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
433 applying 46ae92138f3c
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
434 patching file foo
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
435 Hunk #1 FAILED at 0
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
436 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
437 patch failed to apply
27676
1c48f348f2d0 transplant: correct language to use working directory
timeless <timeless@mozdev.org>
parents: 27666
diff changeset
438 abort: fix up the working directory and run hg transplant --continue
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
439 [255]
27666
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
440 $ cp .hg/transplant/journal .hg/transplant/journal.orig
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
441 $ cat .hg/transplant/journal
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
442 # User test
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
443 # Date 0 0
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
444 # Node ID 46ae92138f3ce0249f6789650403286ead052b6d
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
445 # Parent e8643552fde58f57515e19c4b373a57c96e62af3
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
446 foo2
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
447 $ grep -v 'Date' .hg/transplant/journal.orig > .hg/transplant/journal
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
448 $ HGEDITOR="sh $TESTTMP/checkeditform.sh" hg transplant --continue -e
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
449 abort: filter corrupted changeset (no user or date)
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
450 [255]
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
451 $ cp .hg/transplant/journal.orig .hg/transplant/journal
22252
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
452 $ 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
453 HGEDITFORM=transplant.normal
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
454 46ae92138f3c transplanted as 9159dada197d
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
455 $ hg transplant 1:3
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
456 skipping already applied revision 1:46ae92138f3c
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
457 applying 9d6d6b5a8275
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
458 9d6d6b5a8275 transplanted to 2d17a10c922f
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
459 applying 1dab759070cf
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
460 1dab759070cf transplanted to e06a69927eb0
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
461 $ hg locate
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
462 added
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
463 bar
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
464 baz
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
465 foo
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
466
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
467 test multiple revisions and --continue
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
468
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
469 $ hg up -qC 0
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
470 $ echo bazbaz > baz
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
471 $ hg ci -Am anotherbaz baz
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
472 created new head
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
473 $ hg transplant 1:3
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
474 applying 46ae92138f3c
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
475 46ae92138f3c transplanted to 1024233ea0ba
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
476 applying 9d6d6b5a8275
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
477 patching file baz
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
478 Hunk #1 FAILED at 0
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
479 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
480 patch failed to apply
27676
1c48f348f2d0 transplant: correct language to use working directory
timeless <timeless@mozdev.org>
parents: 27666
diff changeset
481 abort: fix up the working directory and run hg transplant --continue
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
482 [255]
27678
b97004648028 transplant: specify the right file and path for unfinishedstates
timeless <timeless@mozdev.org>
parents: 27677
diff changeset
483 $ hg transplant 1:3
b97004648028 transplant: specify the right file and path for unfinishedstates
timeless <timeless@mozdev.org>
parents: 27677
diff changeset
484 abort: transplant in progress
b97004648028 transplant: specify the right file and path for unfinishedstates
timeless <timeless@mozdev.org>
parents: 27677
diff changeset
485 (use 'hg transplant --continue' or 'hg update' to abort)
b97004648028 transplant: specify the right file and path for unfinishedstates
timeless <timeless@mozdev.org>
parents: 27677
diff changeset
486 [255]
16507
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
487 $ echo fixed > baz
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
488 $ hg transplant --continue
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
489 9d6d6b5a8275 transplanted as d80c49962290
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
490 applying 1dab759070cf
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
491 1dab759070cf transplanted to aa0ffe6bd5ae
1f020021adfa transplant: do not rollback on patching error (issue3379)
Patrick Mezard <patrick@mezard.eu>
parents: 16400
diff changeset
492
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
493 $ cd ..
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
494
12399
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 12376
diff changeset
495 Issue1111: Test transplant --merge
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
496
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
497 $ hg init t1111
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
498 $ cd t1111
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
499 $ echo a > a
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
500 $ hg ci -Am adda
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
501 adding a
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
502 $ echo b >> a
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
503 $ hg ci -m appendb
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
504 $ echo c >> a
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
505 $ hg ci -m appendc
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
506 $ hg up -C 0
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
507 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
508 $ echo d >> a
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
509 $ hg ci -m appendd
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
510 created new head
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
511
21024
7731a2281cf0 spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents: 20269
diff changeset
512 transplant
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
513
22252
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
514 $ 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
515 applying 42dc4432fd35
22252
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
516 HGEDITFORM=transplant.merge
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
517 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
518 $ 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
519 $ cat > a <<EOF
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
520 > x
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
521 > y
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
522 > z
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
523 > EOF
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
524 $ 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
525 $ 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
526 $ 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
527 applying 600a3cdcb41d
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
528 patching file a
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
529 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
530 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
531 patch failed to apply
27676
1c48f348f2d0 transplant: correct language to use working directory
timeless <timeless@mozdev.org>
parents: 27666
diff changeset
532 abort: fix up the working directory and run hg transplant --continue
22252
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
533 [255]
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
534 $ 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
535 HGEDITFORM=transplant.merge
de783f2403c4 transplant: change "editform" to distinguish merge commits from others
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 22046
diff changeset
536 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
537
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
538 $ cd ..
6639
6334569c8caa localrepo: fix partial merge test (issue 1111)
Patrick Mezard <pmezard@gmail.com>
parents: 5384
diff changeset
539
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
540 test transplant into empty repository
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
541
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
542 $ hg init empty
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
543 $ cd empty
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
544 $ hg transplant -s ../t -b tip -a
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
545 adding changesets
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
546 adding manifests
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
547 adding file changes
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
548 added 4 changesets with 4 changes to 4 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34251
diff changeset
549 new changesets 17ab29e464c6:a53251cdf717
20020
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
550
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
551 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
552
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
553 $ 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
554 $ 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
555 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
556 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
557 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
558 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
559 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
560 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
561 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
562 4:a53251cdf717 merged at 4831f4dc831a
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34251
diff changeset
563 new changesets 722f4667af76:4831f4dc831a
20020
6fb59247c7d5 transplant: use peer of source repository as "remote" for "repo.pull()"
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 18138
diff changeset
564
20267
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
565 test interactive transplant
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
566
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
567 $ 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
568 $ 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
569 @ 4:a53251cdf717
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
570 |
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
571 o 3:722f4667af76
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
572 |
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
573 o 2:37a1297eb21b
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
574 |
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
575 | o 1:d11e3596cc1a
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
576 |/
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
577 o 0:17ab29e464c6
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
578
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
579 $ hg transplant -q --config ui.interactive=true -s ../t <<EOF
27666
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
580 > ?
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
581 > x
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
582 > q
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
583 > EOF
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
584 0:17ab29e464c6
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
585 apply changeset? [ynmpcq?]: ?
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
586 y: yes, transplant this changeset
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
587 n: no, skip this changeset
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
588 m: merge at this changeset
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
589 p: show patch
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
590 c: commit selected changesets
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
591 q: quit and cancel transplant
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
592 ?: ? (show this help)
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
593 apply changeset? [ynmpcq?]: x
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
594 unrecognized response
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
595 apply changeset? [ynmpcq?]: q
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
596 $ hg transplant -q --config ui.interactive=true -s ../t <<EOF
20267
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
597 > p
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
598 > y
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
599 > n
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
600 > n
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
601 > m
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
602 > c
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
603 > EOF
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
604 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
605 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
606 --- /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
607 +++ 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
608 @@ -0,0 +1,1 @@
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
609 +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
610 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
611 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
612 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
613 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
614 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
615 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
616 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
617 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
618 apply changeset? [ynmpcq?]: c
20267
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
619 $ hg log -G --template "{node|short}"
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
620 @ 88be5dde5260
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
621 |\
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
622 | o 722f4667af76
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
623 | |
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
624 | o 37a1297eb21b
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
625 |/
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
626 o 17ab29e464c6
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
627
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
628 $ 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
629 > x
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
630 > ?
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
631 > y
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
632 > q
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
633 > EOF
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
634 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
635 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
636 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
637 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
638 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
639 n: no, skip this changeset
20267
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
640 m: merge at this changeset
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
641 p: show patch
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
642 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
643 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
644 ?: ? (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
645 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
646 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
647 apply changeset? [ynmpcq?]: q
20267
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
648 $ hg heads --template "{node|short}\n"
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
649 88be5dde5260
5a7aeb1e68b3 transplant: add test for interactive transplant
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 20020
diff changeset
650
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
651 $ cd ..
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
652
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
653
16972
5efe9c6a34fe tests: add some missing #if's / hghave requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16912
diff changeset
654 #if unix-permissions system-sh
5efe9c6a34fe tests: add some missing #if's / hghave requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16912
diff changeset
655
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
656 test filter
8173
d3fb413667e5 transplant: remove the restriction that the destination be nonempty.
Jacob Lee <artdent@gmail.com>
parents: 8167
diff changeset
657
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
658 $ hg init filter
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
659 $ cd filter
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
660 $ cat <<'EOF' >test-filter
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
661 > #!/bin/sh
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
662 > sed 's/r1/r2/' $1 > $1.new
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
663 > mv $1.new $1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
664 > EOF
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
665 $ chmod +x test-filter
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
666 $ 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
667 filtering * (glob)
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
668 applying 17ab29e464c6
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
669 17ab29e464c6 transplanted to e9ffc54ea104
12376
97ffc68f71d3 tests: add glob matching for unified tests
Brodie Rao <brodie@bitheap.org>
parents: 12375
diff changeset
670 filtering * (glob)
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
671 applying 37a1297eb21b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
672 37a1297eb21b transplanted to 348b36d0b6a5
12376
97ffc68f71d3 tests: add glob matching for unified tests
Brodie Rao <brodie@bitheap.org>
parents: 12375
diff changeset
673 filtering * (glob)
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
674 applying 722f4667af76
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
675 722f4667af76 transplanted to 0aa6979afb95
12376
97ffc68f71d3 tests: add glob matching for unified tests
Brodie Rao <brodie@bitheap.org>
parents: 12375
diff changeset
676 filtering * (glob)
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
677 applying a53251cdf717
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
678 a53251cdf717 transplanted to 14f8512272b5
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
679 $ hg log --template '{rev} {parents} {desc}\n'
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
680 3 b3
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
681 2 b2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
682 1 b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
683 0 r2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
684 $ cd ..
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
685
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
686
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
687 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
688
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
689 $ cd filter
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
690 $ hg up 0
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
691 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
692 $ echo foo > b1
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 12070
diff changeset
693 $ hg ci -Am foo
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
694 adding b1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
695 adding test-filter
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
696 created new head
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
697 $ hg transplant 1 --filter ./test-filter
12376
97ffc68f71d3 tests: add glob matching for unified tests
Brodie Rao <brodie@bitheap.org>
parents: 12375
diff changeset
698 filtering * (glob)
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
699 applying 348b36d0b6a5
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
700 file b1 already exists
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
701 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
702 patch failed to apply
27676
1c48f348f2d0 transplant: correct language to use working directory
timeless <timeless@mozdev.org>
parents: 27666
diff changeset
703 abort: fix up the working directory and run hg transplant --continue
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12156
diff changeset
704 [255]
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
705 $ cd ..
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
706
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
707 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
708
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
709 $ 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
710 $ 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
711 $ 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
712 > #!/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
713 > 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
714 > 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
715 > 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
716 $ 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
717 $ 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
718 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
719 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
720 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
721
3cbb3c57a50e transplant: added 'HGREVISION' variable to the environment passed to the 'filter' command
Luke Plant <L.Plant.98@cantab.net>
parents: 12943
diff changeset
722 $ 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
723 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
724 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
725 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
726 $ 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
727
13789
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
728 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
729
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
730 $ 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
731 $ 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
732 $ 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
733 > #!/bin/sh
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
734 > echo "" > $1
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
735 > EOF
7e5031180c0f transplant: fix crash if filter script munges log file
Luke Plant <L.Plant.98@cantab.net>
parents: 13689
diff changeset
736 $ 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
737 $ 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
738 filtering * (glob)
13790
c0ed76b5056d Fix transplant error message to correspond with test
Brendan Cully <brendan@kublai.com>
parents: 13789
diff changeset
739 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
740 [255]
16912
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 16627
diff changeset
741 $ cd ..
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
742
16972
5efe9c6a34fe tests: add some missing #if's / hghave requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16912
diff changeset
743 #endif
5efe9c6a34fe tests: add some missing #if's / hghave requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16912
diff changeset
744
5efe9c6a34fe tests: add some missing #if's / hghave requirements
Mads Kiilerich <mads@kiilerich.com>
parents: 16912
diff changeset
745
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
746 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
747
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
748 $ hg init twin1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
749 $ cd twin1
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
750 $ echo a > a
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
751 $ echo b > b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
752 $ echo b >> b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
753 $ hg ci -Am t
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
754 adding a
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
755 adding b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
756 $ echo a > b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
757 $ echo b >> b
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
758 $ hg ci -m changeb
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
759 $ cd ..
9995
eba6c8687fd2 transplant: fix small bug when a patch fails while using --filter
Sune Foldager <cryo@cyanite.org>
parents: 8811
diff changeset
760
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
761 $ hg init twin2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
762 $ cd twin2
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
763 $ echo '[patch]' >> .hg/hgrc
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
764 $ echo 'eol = crlf' >> .hg/hgrc
22947
c63a09b6b337 tests: use $PYTHON instead of hardcoding python
Augie Fackler <raf@durin42.com>
parents: 22589
diff changeset
765 $ $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
766 $ hg ci -Am addb
b247123d71f6 test-transplant: fix missing file addition
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
767 adding b
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
768 $ hg transplant -s ../twin1 tip
14012
b247123d71f6 test-transplant: fix missing file addition
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
769 searching for changes
b247123d71f6 test-transplant: fix missing file addition
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
770 warning: repository is unrelated
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
771 applying 2e849d776c17
14012
b247123d71f6 test-transplant: fix missing file addition
Patrick Mezard <pmezard@gmail.com>
parents: 12943
diff changeset
772 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
773 $ cat b
7439ea4146f8 tests: use (esc) instead of other kinds of string escaping
Mads Kiilerich <mads@kiilerich.com>
parents: 12847
diff changeset
774 a\r (esc)
7439ea4146f8 tests: use (esc) instead of other kinds of string escaping
Mads Kiilerich <mads@kiilerich.com>
parents: 12847
diff changeset
775 b\r (esc)
11800
88c3ff051270 tests: unify test-transplant
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 9995
diff changeset
776 $ cd ..
16400
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
777
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
778 test transplant with merge changeset is skipped
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
779
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
780 $ hg init merge1a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
781 $ cd merge1a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
782 $ echo a > a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
783 $ hg ci -Am a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
784 adding a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
785 $ hg branch b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
786 marked working directory as branch b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
787 (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
788 $ hg ci -m branchb
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
789 $ echo b > b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
790 $ hg ci -Am b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
791 adding b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
792 $ hg update default
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
793 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
794 $ hg merge b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
795 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
796 (branch merge, don't forget to commit)
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
797 $ hg ci -m mergeb
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
798 $ cd ..
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
799
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
800 $ hg init merge1b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
801 $ cd merge1b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
802 $ 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
803 $ cd ..
16400
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
804
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
805 test transplant with merge changeset accepts --parent
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
806
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
807 $ hg init merge2a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
808 $ cd merge2a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
809 $ echo a > a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
810 $ hg ci -Am a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
811 adding a
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
812 $ hg branch b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
813 marked working directory as branch b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
814 (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
815 $ hg ci -m branchb
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
816 $ echo b > b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
817 $ hg ci -Am b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
818 adding b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
819 $ hg update default
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
820 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
821 $ hg merge b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
822 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
823 (branch merge, don't forget to commit)
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
824 $ hg ci -m mergeb
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
825 $ cd ..
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
826
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
827 $ hg init merge2b
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
828 $ cd merge2b
27666
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
829 $ hg transplant -s ../merge2a --parent tip tip
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
830 abort: be9f9b39483f is not a parent of be9f9b39483f
cd2f691f20b8 test-transplant.t: improve test coverage
timeless <timeless@mozdev.org>
parents: 27639
diff changeset
831 [255]
16400
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
832 $ hg transplant -s ../merge2a --parent 0 tip
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
833 applying be9f9b39483f
f2ba409dbb0f transplant: permit merge changesets via --parent
Steven Stallion <sstallion@gmail.com>
parents: 15446
diff changeset
834 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
835 $ cd ..
17319
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
836
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
837 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
838
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
839 $ hg init binarysource
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
840 $ cd binarysource
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
841 $ echo a > a
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
842 $ hg ci -Am adda a
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
843 >>> file('b', 'wb').write('\0b1')
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
844 $ hg ci -Am addb b
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
845 >>> file('b', 'wb').write('\0b2')
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
846 $ hg ci -m changeb b
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
847 $ cd ..
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
848
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
849 $ hg clone -r0 binarysource binarydest
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
850 adding changesets
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
851 adding manifests
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
852 adding file changes
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
853 added 1 changesets with 1 changes to 1 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34251
diff changeset
854 new changesets 07f494440405
17319
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
855 updating to branch default
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
856 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
857 $ cd binarydest
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
858 $ cp ../binarysource/b b
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
859 $ hg ci -Am addb2 b
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
860 $ hg transplant -s ../binarysource 2
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
861 searching for changes
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
862 applying 7a7d57e15850
17320
0c3c65c0d3fc transplant: fix emptied changeset message
Patrick Mezard <patrick@mezard.eu>
parents: 17319
diff changeset
863 skipping emptied changeset 7a7d57e15850
23781
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
864
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
865 Test empty result in --continue
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
866
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
867 $ hg transplant -s ../binarysource 1
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
868 searching for changes
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
869 applying 645035761929
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
870 file b already exists
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
871 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
872 patch failed to apply
27676
1c48f348f2d0 transplant: correct language to use working directory
timeless <timeless@mozdev.org>
parents: 27666
diff changeset
873 abort: fix up the working directory and run hg transplant --continue
23781
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
874 [255]
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
875 $ hg status
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
876 ? b.rej
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
877 $ hg transplant --continue
49caef455912 transplant: properly skip empty changeset (issue4423)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 23452
diff changeset
878 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
879
17319
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
880 $ cd ..
a189d4470a34 transplant: handle non-empty patches doing nothing (issue2806)
Patrick Mezard <patrick@mezard.eu>
parents: 17186
diff changeset
881
17539
bc7377160fa7 tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents: 17320
diff changeset
882 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
883
25474
8c14f87bd0ae tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents: 25472
diff changeset
884 $ killdaemons.py
17539
bc7377160fa7 tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents: 17320
diff changeset
885
25757
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
886 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
887 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
888 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
889
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
890 $ cd t
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
891
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
892 $ 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
893 > # emulate that patch.patch() is aborted at patching on "abort" file
34251
61714510220d error: move patch.PatchError so it can easily implement __bytes__ (API)
Yuya Nishihara <yuya@tcha.org>
parents: 32698
diff changeset
894 > from mercurial import error, extensions, patch as patchmod
25757
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
895 > 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
896 > 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
897 > 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
898 > 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
899 > files = set()
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
900 > 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
901 > 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
902 > 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
903 > if 'abort' in files:
34251
61714510220d error: move patch.PatchError so it can easily implement __bytes__ (API)
Yuya Nishihara <yuya@tcha.org>
parents: 32698
diff changeset
904 > raise error.PatchError('intentional error while patching')
25757
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
905 > return r
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
906 > 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
907 > 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
908 > EOF
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
909
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
910 $ 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
911 $ 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
912 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
913 --- a/r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
914 +++ b/r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
915 @@ -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
916 -r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
917 +X1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
918 $ 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
919
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
920 $ 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
921 $ 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
922 $ 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
923 $ 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
924 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
925 --- a/r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
926 +++ b/r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
927 @@ -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
928 -X1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
929 +Y1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
930 $ 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
931
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
932 $ 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
933 $ cat r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
934 r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
935
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
936 $ 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
937 > [fakedirstatewritetime]
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
938 > # 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
939 > # 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
940 > fakenow = 200001010000
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
941 >
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
942 > # 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
943 > [fakepatchtime]
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
944 > fakenow = 200001010000
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
945 >
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
946 > [extensions]
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
947 > 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
948 > fakepatchtime = $TESTDIR/fakepatchtime.py
27639
dbd47b21fd28 cleanup: remove superfluous space after space after equals (tests)
timeless <timeless@mozdev.org>
parents: 25879
diff changeset
949 > abort = $TESTTMP/abort.py
25757
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
950 > EOF
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
951 $ 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
952 applying 22c515968f13
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
953 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
954 applying e38700ba9dd3
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
955 intentional error while patching
27676
1c48f348f2d0 transplant: correct language to use working directory
timeless <timeless@mozdev.org>
parents: 27666
diff changeset
956 abort: fix up the working directory and run hg transplant --continue
25757
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
957 [255]
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
958 $ 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
959 > [hooks]
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
960 > fakedirstatewritetime = !
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
961 > fakepatchtime = !
25879
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
962 > [extensions]
25757
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
963 > abort = !
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
964 > EOF
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
965
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
966 $ cat r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
967 Y1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
968 $ 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
969 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
970 $ 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
971 M r1
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
972
25879
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
973 Test that rollback by unexpected failure after transplanting the first
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
974 revision restores dirstate correctly.
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
975
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
976 $ hg rollback -q
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
977 $ rm -f abort
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
978 $ hg update -q -C d11e3596cc1a
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
979 $ hg parents -T "{node|short}\n"
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
980 d11e3596cc1a
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
981 $ hg status -A
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
982 C r1
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
983 C r2
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
984
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
985 $ cat >> .hg/hgrc <<EOF
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
986 > [hooks]
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
987 > # emulate failure at transplanting the 2nd revision
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
988 > pretxncommit.abort = test ! -f abort
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
989 > EOF
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
990 $ hg transplant "22c515968f13::"
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
991 applying 22c515968f13
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
992 22c515968f13 transplanted to * (glob)
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
993 applying e38700ba9dd3
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
994 transaction abort!
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
995 rollback completed
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
996 abort: pretxncommit.abort hook exited with status 1
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
997 [255]
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
998 $ cat >> .hg/hgrc <<EOF
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
999 > [hooks]
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
1000 > pretxncommit.abort = !
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
1001 > EOF
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
1002
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
1003 $ hg parents -T "{node|short}\n"
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
1004 d11e3596cc1a
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
1005 $ hg status -A
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
1006 M r1
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
1007 ? abort
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
1008 C r2
99e88320d665 transplant: restore dirstate correctly at unexpected failure
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25757
diff changeset
1009
25757
4d1382fd96ff context: write dirstate out explicitly at the end of markcommitted
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 25695
diff changeset
1010 $ cd ..