Mercurial > hg
annotate tests/test-contrib-dumprevlog.t @ 40417:49c7b701fdc2 stable
phase: add an archived phase
This phase allows for hidden changesets in the "user space". It differs from
the "internal" phase which is intended for internal by-product only. There
have been discussions at the 4.8 sprint to use such phase to speedup cleanup
after history rewriting operation.
Shipping it in the same release as the 'internal-phase' groups the associated
`requires` entry. The important bit is to have support for this phase in the
earliest version of mercurial possible. Adding the UI to manipulate this new
phase later seems fine.
The current plan for archived usage and user interface are as follow. On a
repository with internal-phase on and evolution off:
* history rewriting command set rewritten changeset in the archived phase.
(This mean updating the cleanupnodes method).
* keep `hg unbundle .hg/strip-backup/X.hg` as a way to restore changeset for
now
(backup bundle need to contains phase data)
* [maybe] add a `hg strip --soft` advance flag
(a light way to expose the feature without getting in the way of a better
UI)
Mercurial 4.8 freeze is too close to get the above in by then.
We don't introduce a new repository `requirement` as we reuse the one
introduced with the 'archived' phase during the 4.8 cycle.
author | Boris Feld <boris.feld@octobus.net> |
---|---|
date | Wed, 17 Oct 2018 14:47:01 +0200 |
parents | 5abc47d4ca6b |
children | 2f2682f40ea0 |
rev | line source |
---|---|
37407
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1 #require reporevlogstore |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
2 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
3 $ CONTRIBDIR="$TESTDIR/../contrib" |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
4 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
5 $ hg init repo-a |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
6 $ cd repo-a |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
7 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
8 $ echo this is file a > a |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
9 $ hg add a |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
10 $ hg commit -m first |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
11 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
12 $ echo adding to file a >> a |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
13 $ hg commit -m second |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
14 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
15 $ echo adding more to file a >> a |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
16 $ hg commit -m third |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
17 $ hg verify |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
18 checking changesets |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
19 checking manifests |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
20 crosschecking files in changesets and manifests |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
21 checking files |
39489
f1186c292d03
verify: make output less confusing (issue5924)
Meirambek Omyrzak <meirambek77@gmail.com>
parents:
37407
diff
changeset
|
22 checked 3 changesets with 3 changes to 1 files |
37407
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
23 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
24 Dumping revlog of file a to stdout: |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39489
diff
changeset
|
25 $ "$PYTHON" "$CONTRIBDIR/dumprevlog" .hg/store/data/a.i |
37407
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
26 file: .hg/store/data/a.i |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
27 node: 183d2312b35066fb6b3b449b84efc370d50993d0 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
28 linkrev: 0 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
29 parents: 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
30 length: 15 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
31 -start- |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
32 this is file a |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
33 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
34 -end- |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
35 node: b1047953b6e6b633c0d8197eaa5116fbdfd3095b |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
36 linkrev: 1 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
37 parents: 183d2312b35066fb6b3b449b84efc370d50993d0 0000000000000000000000000000000000000000 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
38 length: 32 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
39 -start- |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
40 this is file a |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
41 adding to file a |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
42 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
43 -end- |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
44 node: 8c4fd1f7129b8cdec6c7f58bf48fb5237a4030c1 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
45 linkrev: 2 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
46 parents: b1047953b6e6b633c0d8197eaa5116fbdfd3095b 0000000000000000000000000000000000000000 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
47 length: 54 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
48 -start- |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
49 this is file a |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
50 adding to file a |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
51 adding more to file a |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
52 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
53 -end- |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
54 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
55 Dump all revlogs to file repo.dump: |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
56 |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39489
diff
changeset
|
57 $ find .hg/store -name "*.i" | sort | xargs "$PYTHON" "$CONTRIBDIR/dumprevlog" > ../repo.dump |
37407
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
58 $ cd .. |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
59 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
60 Undumping into repo-b: |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
61 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
62 $ hg init repo-b |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
63 $ cd repo-b |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
39489
diff
changeset
|
64 $ "$PYTHON" "$CONTRIBDIR/undumprevlog" < ../repo.dump |
37407
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
65 .hg/store/00changelog.i |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
66 .hg/store/00manifest.i |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
67 .hg/store/data/a.i |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
68 $ cd .. |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
69 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
70 Rebuild fncache with clone --pull: |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
71 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
72 $ hg clone --pull -U repo-b repo-c |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
73 requesting all changes |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
74 adding changesets |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
75 adding manifests |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
76 adding file changes |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
77 added 3 changesets with 3 changes to 1 files |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
78 new changesets de1da620e7d8:46946d278c50 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
79 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
80 Verify: |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
81 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
82 $ hg -R repo-c verify |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
83 checking changesets |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
84 checking manifests |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
85 crosschecking files in changesets and manifests |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
86 checking files |
39489
f1186c292d03
verify: make output less confusing (issue5924)
Meirambek Omyrzak <meirambek77@gmail.com>
parents:
37407
diff
changeset
|
87 checked 3 changesets with 3 changes to 1 files |
37407
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
88 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
89 Compare repos: |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
90 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
91 $ hg -R repo-c incoming repo-a |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
92 comparing with repo-a |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
93 searching for changes |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
94 no changes found |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
95 [1] |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
96 |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
97 $ hg -R repo-a incoming repo-c |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
98 comparing with repo-c |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
99 searching for changes |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
100 no changes found |
567bddcb4271
tests: extract dumprevlog tests to own file
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
101 [1] |