Mercurial > hg
annotate tests/test-convert-clonebranches.t @ 38806:5742d0428ed9
changegroup: inline prune() logic from narrow
prune() needs to ellide manifests that aren't part of the narrow
matcher.
The code is violating storage abstractions, so a comment has been
added. Keep in mind the impetus for moving this code to core
is so changegroup code can be refactored to be storage agnostic.
Differential Revision: https://phab.mercurial-scm.org/D4012
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Sat, 28 Jul 2018 14:52:46 -0700 |
parents | 794f7bb739be |
children | 5abc47d4ca6b |
rev | line source |
---|---|
5934
e495f3f35b2d
convert: hg.clonebranches must pull missing parents (issue941)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
1 |
23172
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
18373
diff
changeset
|
2 $ cat <<EOF >> $HGRCPATH |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
18373
diff
changeset
|
3 > [extensions] |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
18373
diff
changeset
|
4 > convert = |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
18373
diff
changeset
|
5 > [convert] |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
18373
diff
changeset
|
6 > hg.tagsbranch = 0 |
e955549cd045
tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents:
18373
diff
changeset
|
7 > EOF |
12518
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
8 $ hg init source |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
9 $ cd source |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
10 $ echo a > a |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
11 $ hg ci -qAm adda |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
12 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
13 Add a merge with one parent in the same branch |
5934
e495f3f35b2d
convert: hg.clonebranches must pull missing parents (issue941)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
14 |
12518
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
15 $ echo a >> a |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
16 $ hg ci -qAm changea |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
17 $ hg up -qC 0 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
18 $ hg branch branch0 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
19 marked working directory as branch branch0 |
15615 | 20 (branches are permanent and global, did you want a bookmark?) |
12518
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
21 $ echo b > b |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
22 $ hg ci -qAm addb |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
23 $ hg up -qC |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
24 $ hg merge default |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
25 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
26 (branch merge, don't forget to commit) |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
27 $ hg ci -qm mergeab |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
28 $ hg tag -ql mergeab |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
29 $ cd .. |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
30 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
31 Miss perl... sometimes |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
32 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
33 $ cat > filter.py <<EOF |
33952
794f7bb739be
tests: update test-convert-clonebranches to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
32940
diff
changeset
|
34 > from __future__ import absolute_import |
794f7bb739be
tests: update test-convert-clonebranches to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
32940
diff
changeset
|
35 > import re |
794f7bb739be
tests: update test-convert-clonebranches to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
32940
diff
changeset
|
36 > import sys |
12518
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
37 > |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
38 > r = re.compile(r'^(?:\d+|pulling from)') |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
39 > sys.stdout.writelines([l for l in sys.stdin if r.search(l)]) |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
40 > EOF |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
41 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
42 convert |
5934
e495f3f35b2d
convert: hg.clonebranches must pull missing parents (issue941)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
43 |
12518
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
44 $ hg convert -v --config convert.hg.clonebranches=1 source dest | |
32940
75be14993fda
cleanup: use $PYTHON to run python in many more tests
Augie Fackler <augie@google.com>
parents:
25295
diff
changeset
|
45 > $PYTHON filter.py |
12518
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
46 3 adda |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
47 2 changea |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
48 1 addb |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
49 pulling from default into branch0 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
50 1 changesets found |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
51 0 mergeab |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
52 pulling from default into branch0 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
53 1 changesets found |
5934
e495f3f35b2d
convert: hg.clonebranches must pull missing parents (issue941)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
54 |
12518
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
55 Add a merge with both parents and child in different branches |
5934
e495f3f35b2d
convert: hg.clonebranches must pull missing parents (issue941)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
56 |
12518
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
57 $ cd source |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
58 $ hg branch branch1 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
59 marked working directory as branch branch1 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
60 $ echo a > file1 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
61 $ hg ci -qAm c1 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
62 $ hg up -qC mergeab |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
63 $ hg branch branch2 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
64 marked working directory as branch branch2 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
65 $ echo a > file2 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
66 $ hg ci -qAm c2 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
67 $ hg merge branch1 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
68 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
69 (branch merge, don't forget to commit) |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
70 $ hg branch branch3 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
71 marked working directory as branch branch3 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
72 $ hg ci -qAm c3 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
73 $ cd .. |
5934
e495f3f35b2d
convert: hg.clonebranches must pull missing parents (issue941)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
74 |
12518
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
75 incremental conversion |
5934
e495f3f35b2d
convert: hg.clonebranches must pull missing parents (issue941)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
76 |
12518
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
77 $ hg convert -v --config convert.hg.clonebranches=1 source dest | |
32940
75be14993fda
cleanup: use $PYTHON to run python in many more tests
Augie Fackler <augie@google.com>
parents:
25295
diff
changeset
|
78 > $PYTHON filter.py |
12518
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
79 2 c1 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
80 pulling from branch0 into branch1 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
81 4 changesets found |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
82 1 c2 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
83 pulling from branch0 into branch2 |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
84 4 changesets found |
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
85 0 c3 |
18373
687ed69f6fdf
convert: process missing branches in sorted order
Mads Kiilerich <mads@kiilerich.com>
parents:
15615
diff
changeset
|
86 pulling from branch1 into branch3 |
12518
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
87 5 changesets found |
18373
687ed69f6fdf
convert: process missing branches in sorted order
Mads Kiilerich <mads@kiilerich.com>
parents:
15615
diff
changeset
|
88 pulling from branch2 into branch3 |
12518
89f1210a1238
tests: unify test-convert-clonebranches
Matt Mackall <mpm@selenic.com>
parents:
10119
diff
changeset
|
89 1 changesets found |