annotate tests/test-phases.t @ 30442:41a8106789ca

util: implement zstd compression engine Now that zstd is vendored and being built (in some configurations), we can implement a compression engine for zstd! The zstd engine is a little different from existing engines. Because it may not always be present, we have to defer load the module in case importing it fails. We facilitate this via a cached property that holds a reference to the module or None. The "available" method is implemented to reflect reality. The zstd engine declares its ability to handle bundles using the "zstd" human name and the "ZS" internal name. The latter was chosen because internal names are 2 characters (by only convention I think) and "ZS" seems reasonable. The engine, like others, supports specifying the compression level. However, there are no consumers of this API that yet pass in that argument. I have plans to change that, so stay tuned. Since all we need to do to support bundle generation with a new compression engine is implement and register the compression engine, bundle generation with zstd "just works!" Tests demonstrating this have been added. How does performance of zstd for bundle generation compare? On the mozilla-unified repo, `hg bundle --all -t <engine>-v2` yields the following on my i7-6700K on Linux: engine CPU time bundle size vs orig size throughput none 97.0s 4,054,405,584 100.0% 41.8 MB/s bzip2 (l=9) 393.6s 975,343,098 24.0% 10.3 MB/s gzip (l=6) 184.0s 1,140,533,074 28.1% 22.0 MB/s zstd (l=1) 108.2s 1,119,434,718 27.6% 37.5 MB/s zstd (l=2) 111.3s 1,078,328,002 26.6% 36.4 MB/s zstd (l=3) 113.7s 1,011,823,727 25.0% 35.7 MB/s zstd (l=4) 116.0s 1,008,965,888 24.9% 35.0 MB/s zstd (l=5) 121.0s 977,203,148 24.1% 33.5 MB/s zstd (l=6) 131.7s 927,360,198 22.9% 30.8 MB/s zstd (l=7) 139.0s 912,808,505 22.5% 29.2 MB/s zstd (l=12) 198.1s 854,527,714 21.1% 20.5 MB/s zstd (l=18) 681.6s 789,750,690 19.5% 5.9 MB/s On compression, zstd for bundle generation delivers: * better compression than gzip with significantly less CPU utilization * better than bzip2 compression ratios while still being significantly faster than gzip * ability to aggressively tune compression level to achieve significantly smaller bundles That last point is important. With clone bundles, a server can pre-generate a bundle file, upload it to a static file server, and redirect clients to transparently download it during clone. The server could choose to produce a zstd bundle with the highest compression settings possible. This would take a very long time - a magnitude longer than a typical zstd bundle generation - but the result would be hundreds of megabytes smaller! For the clone volume we do at Mozilla, this could translate to petabytes of bandwidth savings per year and faster clones (due to smaller transfer size). I don't have detailed numbers to report on decompression. However, zstd decompression is fast: >1 GB/s output throughput on this machine, even through the Python bindings. And it can do that regardless of the compression level of the input. By the time you have enough data to worry about overhead of decompression, you have plenty of other things to worry about performance wise. zstd is wins all around. I can't wait to implement support for it on the wire protocol and in revlogs.
author Gregory Szorc <gregory.szorc@gmail.com>
date Fri, 11 Nov 2016 01:10:07 -0800
parents 6084926366b9
children 6afd8a87a657
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16013
2a1d97630f7f tests: don't use alias
Mads Kiilerich <mads@kiilerich.com>
parents: 15907
diff changeset
1 $ hglog() { hg log --template "{rev} {phaseidx} {desc}\n" $*; }
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
2 $ mkcommit() {
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
3 > echo "$1" > "$1"
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
4 > hg add "$1"
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
5 > message="$1"
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
6 > shift
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
7 > hg ci -m "$message" $*
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
8 > }
15423
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
9
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
10 $ hg init initialrepo
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
11 $ cd initialrepo
16622
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
12
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
13 Cannot change null revision phase
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
14
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
15 $ hg phase --force --secret null
16659
58edd786e96f phase: make if abort on nullid for the good reason
Patrick Mezard <patrick@mezard.eu>
parents: 16622
diff changeset
16 abort: cannot change null revision phase
16622
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
17 [255]
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
18 $ hg phase null
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
19 -1: public
e4451d7432fa test-phases: test changing null revision phase
Patrick Mezard <patrick@mezard.eu>
parents: 16535
diff changeset
20
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
21 $ mkcommit A
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
22
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
23 New commit are draft by default
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
24
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
25 $ hglog
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
26 0 1 A
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
27
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
28 Following commit are draft too
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
29
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
30 $ mkcommit B
15423
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
31
ea5b346024e1 phases: add a very simple test
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
32 $ hglog
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
33 1 1 B
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
34 0 1 A
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
35
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
36 Draft commit are properly created over public one:
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
37
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
38 $ hg phase --public .
25120
a7701001c829 phase: default to current revision if no rev is provided (issue4666)
Gilles Moris <gilles.moris@free.fr>
parents: 25111
diff changeset
39 $ hg phase
a7701001c829 phase: default to current revision if no rev is provided (issue4666)
Gilles Moris <gilles.moris@free.fr>
parents: 25111
diff changeset
40 1: public
15694
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
41 $ hglog
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
42 1 0 B
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
43 0 0 A
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
44
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
45 $ mkcommit C
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
46 $ mkcommit D
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
47
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
48 $ hglog
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
49 3 1 D
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
50 2 1 C
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
51 1 0 B
1e4e49c58b94 phases: add a bit more test for local phase movement.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15483
diff changeset
52 0 0 A
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
53
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
54 Test creating changeset as secret
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
55
16030
308406677e9d phases: allow phase name in phases.new-commit settings
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16013
diff changeset
56 $ mkcommit E --config phases.new-commit='secret'
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
57 $ hglog
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
58 4 2 E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
59 3 1 D
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
60 2 1 C
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
61 1 0 B
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
62 0 0 A
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
63
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
64 Test the secret property is inherited
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
65
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
66 $ mkcommit H
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
67 $ hglog
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
68 5 2 H
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
69 4 2 E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
70 3 1 D
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
71 2 1 C
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
72 1 0 B
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
73 0 0 A
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
74
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
75 Even on merge
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
76
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
77 $ hg up -q 1
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
78 $ mkcommit "B'"
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
79 created new head
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
80 $ hglog
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
81 6 1 B'
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
82 5 2 H
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
83 4 2 E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
84 3 1 D
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
85 2 1 C
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
86 1 0 B
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
87 0 0 A
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
88 $ hg merge 4 # E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
89 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
90 (branch merge, don't forget to commit)
25120
a7701001c829 phase: default to current revision if no rev is provided (issue4666)
Gilles Moris <gilles.moris@free.fr>
parents: 25111
diff changeset
91 $ hg phase
a7701001c829 phase: default to current revision if no rev is provided (issue4666)
Gilles Moris <gilles.moris@free.fr>
parents: 25111
diff changeset
92 6: draft
a7701001c829 phase: default to current revision if no rev is provided (issue4666)
Gilles Moris <gilles.moris@free.fr>
parents: 25111
diff changeset
93 4: secret
15712
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
94 $ hg ci -m "merge B' and E"
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
95 $ hglog
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
96 7 2 merge B' and E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
97 6 1 B'
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
98 5 2 H
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
99 4 2 E
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
100 3 1 D
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
101 2 1 C
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
102 1 0 B
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
103 0 0 A
06b8b74720d6 phases: test the new-commit option and proper inheritence of phase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15694
diff changeset
104
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
105 Test secret changeset are not pushed
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
106
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
107 $ hg init ../push-dest
15820
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
108 $ cat > ../push-dest/.hg/hgrc << EOF
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
109 > [phases]
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
110 > publish=False
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
111 > EOF
15838
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
112 $ hg outgoing ../push-dest --template='{rev} {phase} {desc|firstline}\n'
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
113 comparing with ../push-dest
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
114 searching for changes
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
115 0 public A
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
116 1 public B
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
117 2 draft C
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
118 3 draft D
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
119 6 draft B'
17198
ecde35a1af9e outgoing: accept revset argument for --rev
Matt Harbison <matt_harbison@yahoo.com>
parents: 16913
diff changeset
120 $ hg outgoing -r 'branch(default)' ../push-dest --template='{rev} {phase} {desc|firstline}\n'
15838
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
121 comparing with ../push-dest
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
122 searching for changes
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
123 0 public A
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
124 1 public B
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
125 2 draft C
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
126 3 draft D
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
127 6 draft B'
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
128
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
129 $ hg push ../push-dest -f # force because we push multiple heads
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
130 pushing to ../push-dest
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
131 searching for changes
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
132 adding changesets
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
133 adding manifests
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
134 adding file changes
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
135 added 5 changesets with 5 changes to 5 files (+1 heads)
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
136 $ hglog
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
137 7 2 merge B' and E
15820
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
138 6 1 B'
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
139 5 2 H
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
140 4 2 E
15820
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
141 3 1 D
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
142 2 1 C
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
143 1 0 B
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
144 0 0 A
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
145 $ cd ../push-dest
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
146 $ hglog
15820
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
147 4 1 B'
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
148 3 1 D
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
149 2 1 C
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
150 1 0 B
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
151 0 0 A
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
152
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
153 (Issue3303)
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
154 Check that remote secret changeset are ignore when checking creation of remote heads
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
155
21024
7731a2281cf0 spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents: 20530
diff changeset
156 We add a secret head into the push destination. This secret head shadows a
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
157 visible shared between the initial repo and the push destination.
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
158
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
159 $ hg up -q 4 # B'
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
160 $ mkcommit Z --config phases.new-commit=secret
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
161 $ hg phase .
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
162 5: secret
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
163
21024
7731a2281cf0 spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents: 20530
diff changeset
164 We now try to push a new public changeset that descend from the common public
7731a2281cf0 spelling: fixes from spell checker
Mads Kiilerich <madski@unity3d.com>
parents: 20530
diff changeset
165 head shadowed by the remote secret head.
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
166
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
167 $ cd ../initialrepo
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
168 $ hg up -q 6 #B'
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
169 $ mkcommit I
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
170 created new head
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
171 $ hg push ../push-dest
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
172 pushing to ../push-dest
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
173 searching for changes
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
174 adding changesets
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
175 adding manifests
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
176 adding file changes
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
177 added 1 changesets with 1 changes to 1 files (+1 heads)
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
178
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
179 :note: The "(+1 heads)" is wrong as we do not had any visible head
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
180
18462
593eb3786165 documentation: update to new filter names
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18394
diff changeset
181 check that branch cache with "served" filter are properly computed and stored
18189
b9026ba002f6 branchmap: enable caching for filtered version too
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17985
diff changeset
182
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
183 $ ls ../push-dest/.hg/cache/branch2*
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
184 ../push-dest/.hg/cache/branch2-served
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
185 $ cat ../push-dest/.hg/cache/branch2-served
18394
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
186 6d6770faffce199f1fddd1cf87f6f026138cf061 6 465891ffab3c47a3c23792f7dc84156e19a90722
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
187 b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e o default
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
188 6d6770faffce199f1fddd1cf87f6f026138cf061 o default
18394
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
189 $ hg heads -R ../push-dest --template '{rev}:{node} {phase}\n' #update visible cache too
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
190 6:6d6770faffce199f1fddd1cf87f6f026138cf061 draft
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
191 5:2713879da13d6eea1ff22b442a5a87cb31a7ce6a secret
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
192 3:b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e draft
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
193 $ ls ../push-dest/.hg/cache/branch2*
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
194 ../push-dest/.hg/cache/branch2-served
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
195 ../push-dest/.hg/cache/branch2-visible
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
196 $ cat ../push-dest/.hg/cache/branch2-served
18394
5010448197bc branchmap: update cache of 'unserved' filter on new changesets
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18382
diff changeset
197 6d6770faffce199f1fddd1cf87f6f026138cf061 6 465891ffab3c47a3c23792f7dc84156e19a90722
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
198 b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e o default
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
199 6d6770faffce199f1fddd1cf87f6f026138cf061 o default
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
200 $ cat ../push-dest/.hg/cache/branch2-visible
18189
b9026ba002f6 branchmap: enable caching for filtered version too
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17985
diff changeset
201 6d6770faffce199f1fddd1cf87f6f026138cf061 6
20185
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
202 b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e o default
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
203 2713879da13d6eea1ff22b442a5a87cb31a7ce6a o default
7d4219512823 branchmap: cache open/closed branch head information
Brodie Rao <brodie@sf.io>
parents: 20117
diff changeset
204 6d6770faffce199f1fddd1cf87f6f026138cf061 o default
18189
b9026ba002f6 branchmap: enable caching for filtered version too
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17985
diff changeset
205
16535
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
206
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
207 Restore condition prior extra insertion.
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
208 $ hg -q --config extensions.mq= strip .
39d1f83eb05d branchmap: server should not advertise secret changeset in branchmap (Issue3303)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16097
diff changeset
209 $ hg up -q 7
15713
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
210 $ cd ..
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
211
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
212 Test secret changeset are not pull
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
213
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
214 $ hg init pull-dest
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
215 $ cd pull-dest
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
216 $ hg pull ../initialrepo
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
217 pulling from ../initialrepo
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
218 requesting all changes
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
219 adding changesets
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
220 adding manifests
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
221 adding file changes
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
222 added 5 changesets with 5 changes to 5 files (+1 heads)
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
223 (run 'hg heads' to see heads, 'hg merge' to merge)
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
224 $ hglog
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
225 4 0 B'
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
226 3 0 D
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
227 2 0 C
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
228 1 0 B
cff25e4b37d2 phases: do not exchange secret changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15712
diff changeset
229 0 0 A
15819
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
230 $ cd ..
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
231
15838
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
232 But secret can still be bundled explicitly
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
233
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
234 $ cd initialrepo
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
235 $ hg bundle --base '4^' -r 'children(4)' ../secret-bundle.hg
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
236 4 changesets found
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
237 $ cd ..
7299e09a85a2 phases: make outgoing object and discovery aware of exclusion
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15830
diff changeset
238
15888
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
239 Test secret changeset are not cloned
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
240 (during local clone)
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
241
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
242 $ hg clone -qU initialrepo clone-dest
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
243 $ hglog -R clone-dest
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
244 4 0 B'
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
245 3 0 D
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
246 2 0 C
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
247 1 0 B
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
248 0 0 A
2072e4031994 phases: exclude secret when doing a local clone
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15838
diff changeset
249
25111
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
250 Test summary
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
251
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
252 $ hg summary -R clone-dest --verbose
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
253 parent: -1:000000000000 (no revision checked out)
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
254 branch: default
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
255 commit: (clean)
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
256 update: 5 new changesets (update)
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
257 $ hg summary -R initialrepo
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
258 parent: 7:17a481b3bccb tip
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
259 merge B' and E
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
260 branch: default
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25120
diff changeset
261 commit: (clean) (secret)
25111
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
262 update: 1 new changesets, 2 branch heads (merge)
25382
6084926366b9 summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents: 25120
diff changeset
263 phases: 3 draft, 3 secret
25111
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
264 $ hg summary -R initialrepo --quiet
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
265 parent: 7:17a481b3bccb tip
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
266 update: 1 new changesets, 2 branch heads (merge)
1ef96a3b8b89 summary: add a phase line (draft, secret) to the output
Gilles Moris <gilles.moris@free.fr>
parents: 24520
diff changeset
267
15819
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
268 Test revset
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
269
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
270 $ cd initialrepo
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
271 $ hglog -r 'public()'
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
272 0 0 A
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
273 1 0 B
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
274 $ hglog -r 'draft()'
15820
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
275 2 1 C
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
276 3 1 D
2673006f7989 phases: fix phase synchronization on push
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15819
diff changeset
277 6 1 B'
15819
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
278 $ hglog -r 'secret()'
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
279 4 2 E
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
280 5 2 H
33ca11b010e2 phases: implements simple revset symbol
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15713
diff changeset
281 7 2 merge B' and E
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
282
15907
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
283 test that phase are displayed in log at debug level
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
284
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
285 $ hg log --debug
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
286 changeset: 7:17a481b3bccb796c0521ae97903d81c52bfee4af
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
287 tag: tip
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
288 phase: secret
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
289 parent: 6:cf9fe039dfd67e829edf6522a45de057b5c86519
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
290 parent: 4:a603bfb5a83e312131cebcd05353c217d4d21dde
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
291 manifest: 7:5e724ffacba267b2ab726c91fc8b650710deaaa8
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
292 user: test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
293 date: Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
294 files+: C D E
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
295 extra: branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
296 description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
297 merge B' and E
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
298
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
299
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
300 changeset: 6:cf9fe039dfd67e829edf6522a45de057b5c86519
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
301 phase: draft
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
302 parent: 1:27547f69f25460a52fff66ad004e58da7ad3fb56
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
303 parent: -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
304 manifest: 6:ab8bfef2392903058bf4ebb9e7746e8d7026b27a
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
305 user: test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
306 date: Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
307 files+: B'
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
308 extra: branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
309 description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
310 B'
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
311
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
312
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
313 changeset: 5:a030c6be5127abc010fcbff1851536552e6951a8
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
314 phase: secret
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
315 parent: 4:a603bfb5a83e312131cebcd05353c217d4d21dde
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
316 parent: -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
317 manifest: 5:5c710aa854874fe3d5fa7192e77bdb314cc08b5a
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
318 user: test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
319 date: Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
320 files+: H
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
321 extra: branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
322 description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
323 H
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
324
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
325
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
326 changeset: 4:a603bfb5a83e312131cebcd05353c217d4d21dde
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
327 phase: secret
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
328 parent: 3:b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
329 parent: -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
330 manifest: 4:7173fd1c27119750b959e3a0f47ed78abe75d6dc
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
331 user: test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
332 date: Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
333 files+: E
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
334 extra: branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
335 description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
336 E
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
337
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
338
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
339 changeset: 3:b3325c91a4d916bcc4cdc83ea3fe4ece46a42f6e
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
340 phase: draft
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
341 parent: 2:f838bfaca5c7226600ebcfd84f3c3c13a28d3757
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
342 parent: -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
343 manifest: 3:6e1f4c47ecb533ffd0c8e52cdc88afb6cd39e20c
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
344 user: test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
345 date: Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
346 files+: D
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
347 extra: branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
348 description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
349 D
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
350
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
351
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
352 changeset: 2:f838bfaca5c7226600ebcfd84f3c3c13a28d3757
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
353 phase: draft
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
354 parent: 1:27547f69f25460a52fff66ad004e58da7ad3fb56
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
355 parent: -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
356 manifest: 2:66a5a01817fdf5239c273802b5b7618d051c89e4
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
357 user: test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
358 date: Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
359 files+: C
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
360 extra: branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
361 description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
362 C
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
363
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
364
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
365 changeset: 1:27547f69f25460a52fff66ad004e58da7ad3fb56
22765
55dcc7fb731c log: do not hide the public phase in debug mode (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 21024
diff changeset
366 phase: public
15907
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
367 parent: 0:4a2df7238c3b48766b5e22fafbb8a2f506ec8256
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
368 parent: -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
369 manifest: 1:cb5cbbc1bfbf24cc34b9e8c16914e9caa2d2a7fd
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
370 user: test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
371 date: Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
372 files+: B
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
373 extra: branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
374 description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
375 B
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
376
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
377
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
378 changeset: 0:4a2df7238c3b48766b5e22fafbb8a2f506ec8256
22765
55dcc7fb731c log: do not hide the public phase in debug mode (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 21024
diff changeset
379 phase: public
15907
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
380 parent: -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
381 parent: -1:0000000000000000000000000000000000000000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
382 manifest: 0:007d8c9d88841325f5c6b06371b35b4e8a2b1a83
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
383 user: test
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
384 date: Thu Jan 01 00:00:00 1970 +0000
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
385 files+: A
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
386 extra: branch=default
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
387 description:
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
388 A
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15888
diff changeset
389
17985
f94ead934067 tests: fix broken fix of test-phases output
Matt Mackall <mpm@selenic.com>
parents: 17979
diff changeset
390
17979
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
391
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
392
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
393 (Issue3707)
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
394 test invalid phase name
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
395
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
396 $ mkcommit I --config phases.new-commit='babar'
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
397 transaction abort!
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
398 rollback completed
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
399 abort: phases.new-commit: not a valid phase name ('babar')
b3ec0b5fd777 phases: fix missing "error" module import (issue3707)
André Sintzoff <andre.sintzoff@gmail.com>
parents: 17198
diff changeset
400 [255]
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
401 Test phase command
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
402 ===================
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
403
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
404 initial picture
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
405
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
406 $ hg log -G --template "{rev} {phase} {desc}\n"
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
407 @ 7 secret merge B' and E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
408 |\
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
409 | o 6 draft B'
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
410 | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
411 +---o 5 secret H
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
412 | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
413 o | 4 secret E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
414 | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
415 o | 3 draft D
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
416 | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
417 o | 2 draft C
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
418 |/
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
419 o 1 public B
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
420 |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
421 o 0 public A
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
422
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
423
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
424 display changesets phase
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
425
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
426 (mixing -r and plain rev specification)
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
427
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
428 $ hg phase 1::4 -r 7
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
429 1: public
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
430 2: draft
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
431 3: draft
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
432 4: secret
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
433 7: secret
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
434
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
435
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
436 move changeset forward
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
437
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
438 (with -r option)
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
439
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
440 $ hg phase --public -r 2
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
441 $ hg log -G --template "{rev} {phase} {desc}\n"
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
442 @ 7 secret merge B' and E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
443 |\
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
444 | o 6 draft B'
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
445 | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
446 +---o 5 secret H
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
447 | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
448 o | 4 secret E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
449 | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
450 o | 3 draft D
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
451 | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
452 o | 2 public C
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
453 |/
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
454 o 1 public B
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
455 |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
456 o 0 public A
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
457
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
458
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
459 move changeset backward
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
460
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
461 (without -r option)
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
462
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
463 $ hg phase --draft --force 2
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
464 $ hg log -G --template "{rev} {phase} {desc}\n"
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
465 @ 7 secret merge B' and E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
466 |\
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
467 | o 6 draft B'
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
468 | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
469 +---o 5 secret H
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
470 | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
471 o | 4 secret E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
472 | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
473 o | 3 draft D
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
474 | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
475 o | 2 draft C
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
476 |/
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
477 o 1 public B
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
478 |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
479 o 0 public A
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
480
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
481
24520
34e8bfc21f94 phases: add killswitch for native implementation
Laurent Charignon <lcharignon@fb.com>
parents: 22955
diff changeset
482 move changeset forward and backward and test kill switch
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
483
24520
34e8bfc21f94 phases: add killswitch for native implementation
Laurent Charignon <lcharignon@fb.com>
parents: 22955
diff changeset
484 $ cat <<EOF >> $HGRCPATH
34e8bfc21f94 phases: add killswitch for native implementation
Laurent Charignon <lcharignon@fb.com>
parents: 22955
diff changeset
485 > [experimental]
34e8bfc21f94 phases: add killswitch for native implementation
Laurent Charignon <lcharignon@fb.com>
parents: 22955
diff changeset
486 > nativephaseskillswitch = true
34e8bfc21f94 phases: add killswitch for native implementation
Laurent Charignon <lcharignon@fb.com>
parents: 22955
diff changeset
487 > EOF
15830
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
488 $ hg phase --draft --force 1::4
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
489 $ hg log -G --template "{rev} {phase} {desc}\n"
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
490 @ 7 secret merge B' and E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
491 |\
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
492 | o 6 draft B'
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
493 | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
494 +---o 5 secret H
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
495 | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
496 o | 4 draft E
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
497 | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
498 o | 3 draft D
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
499 | |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
500 o | 2 draft C
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
501 |/
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
502 o 1 draft B
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
503 |
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
504 o 0 public A
8ed112ed774a phases: add a phases command to display and manipulate phases
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15823
diff changeset
505
16097
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
506 test partial failure
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
507
24520
34e8bfc21f94 phases: add killswitch for native implementation
Laurent Charignon <lcharignon@fb.com>
parents: 22955
diff changeset
508 $ cat <<EOF >> $HGRCPATH
34e8bfc21f94 phases: add killswitch for native implementation
Laurent Charignon <lcharignon@fb.com>
parents: 22955
diff changeset
509 > [experimental]
34e8bfc21f94 phases: add killswitch for native implementation
Laurent Charignon <lcharignon@fb.com>
parents: 22955
diff changeset
510 > nativephaseskillswitch = false
34e8bfc21f94 phases: add killswitch for native implementation
Laurent Charignon <lcharignon@fb.com>
parents: 22955
diff changeset
511 > EOF
16097
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
512 $ hg phase --public 7
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
513 $ hg phase --draft '5 or 7'
20093
1dee888b22f7 phase: better error message when --force is needed
Martin Geisler <martin@geisler.net>
parents: 18462
diff changeset
514 cannot move 1 changesets to a higher phase, use --force
16097
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
515 phase changed for 1 changesets
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
516 [1]
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
517 $ hg log -G --template "{rev} {phase} {desc}\n"
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
518 @ 7 public merge B' and E
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
519 |\
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
520 | o 6 public B'
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
521 | |
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
522 +---o 5 draft H
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
523 | |
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
524 o | 4 public E
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
525 | |
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
526 o | 3 public D
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
527 | |
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
528 o | 2 public C
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
529 |/
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
530 o 1 public B
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
531 |
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
532 o 0 public A
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
533
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
534
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
535 test complete failure
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
536
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
537 $ hg phase --draft 7
20093
1dee888b22f7 phase: better error message when --force is needed
Martin Geisler <martin@geisler.net>
parents: 18462
diff changeset
538 cannot move 1 changesets to a higher phase, use --force
16097
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
539 no phases changed
8dc573a9c5e5 phase: when phase cannot be reduced, hint at --force and return 1 (BC)
Patrick Mezard <patrick@mezard.eu>
parents: 16030
diff changeset
540 [1]
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16659
diff changeset
541
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16659
diff changeset
542 $ cd ..
20332
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
543
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
544 test hidden changeset are not cloned as public (issue3935)
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
545
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
546 $ cd initialrepo
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
547
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
548 (enabling evolution)
22955
fab9dda0f2a3 obsolete: update tests to use obsolete options
Durham Goode <durham@fb.com>
parents: 22765
diff changeset
549 $ cat >> $HGRCPATH << EOF
fab9dda0f2a3 obsolete: update tests to use obsolete options
Durham Goode <durham@fb.com>
parents: 22765
diff changeset
550 > [experimental]
fab9dda0f2a3 obsolete: update tests to use obsolete options
Durham Goode <durham@fb.com>
parents: 22765
diff changeset
551 > evolution=createmarkers
20332
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
552 > EOF
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
553
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
554 (making a changeset hidden; H in that case)
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
555 $ hg debugobsolete `hg id --debug -r 5`
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
556
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
557 $ cd ..
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
558 $ hg clone initialrepo clonewithobs
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
559 requesting all changes
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
560 adding changesets
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
561 adding manifests
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
562 adding file changes
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
563 added 7 changesets with 6 changes to 6 files
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
564 updating to branch default
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
565 6 files updated, 0 files merged, 0 files removed, 0 files unresolved
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
566 $ cd clonewithobs
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
567 $ hg log -G --template "{rev} {phase} {desc}\n"
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
568 @ 6 public merge B' and E
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
569 |\
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
570 | o 5 public B'
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
571 | |
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
572 o | 4 public E
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
573 | |
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
574 o | 3 public D
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
575 | |
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
576 o | 2 public C
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
577 |/
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
578 o 1 public B
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
579 |
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
580 o 0 public A
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
581
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
582
20530
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
583 test verify repo containing hidden changesets, which should not abort just
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
584 because repo.cancopy() is False
20332
a959f7167077 clone: do not turn hidden changeset public on publishing clone (issue3935)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20185
diff changeset
585
20530
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
586 $ cd ../initialrepo
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
587 $ hg verify
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
588 checking changesets
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
589 checking manifests
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
590 crosschecking files in changesets and manifests
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
591 checking files
78f547cdc362 verify: do not prevent verify repository containing hidden changesets
Yuya Nishihara <yuya@tcha.org>
parents: 20332
diff changeset
592 7 files, 8 changesets, 7 total revisions