Mercurial > hg
annotate tests/test-treemanifest.t @ 29151:7996c3acc33b
wireproto: optimize handling of large batch responses
Now that batch can be used by remotefilelog, the quadratic string
copying this was doing was actually disastrous. In my local testing,
fetching a 56 meg file used to take 3 minutes, and now takes only a
few seconds.
author | Augie Fackler <augie@google.com> |
---|---|
date | Thu, 12 May 2016 09:39:14 -0400 |
parents | c4b727795d6a |
children | 1b699c7eb2b7 |
rev | line source |
---|---|
28168
1a943a3a78ea
tests: put test-treemanifest.t on a port diet
timeless <timeless@mozdev.org>
parents:
28063
diff
changeset
|
1 #require killdaemons |
1a943a3a78ea
tests: put test-treemanifest.t on a port diet
timeless <timeless@mozdev.org>
parents:
28063
diff
changeset
|
2 |
26920
4d1a96bb831f
test: enable generaldelta early in 'test-treemanifest.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25398
diff
changeset
|
3 $ cat << EOF >> $HGRCPATH |
4d1a96bb831f
test: enable generaldelta early in 'test-treemanifest.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25398
diff
changeset
|
4 > [format] |
4d1a96bb831f
test: enable generaldelta early in 'test-treemanifest.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25398
diff
changeset
|
5 > usegeneraldelta=yes |
27953
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
6 > [ui] |
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
7 > ssh=python "$TESTDIR/dummyssh" |
26920
4d1a96bb831f
test: enable generaldelta early in 'test-treemanifest.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25398
diff
changeset
|
8 > EOF |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
9 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
10 Set up repo |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
11 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
12 $ hg --config experimental.treemanifest=True init repo |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
13 $ cd repo |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
14 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
15 Requirements get set on init |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
16 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
17 $ grep treemanifest .hg/requires |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
18 treemanifest |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
19 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
20 Without directories, looks like any other repo |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
21 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
22 $ echo 0 > a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
23 $ echo 0 > b |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
24 $ hg ci -Aqm initial |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
25 $ hg debugdata -m 0 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
26 a\x00362fef284ce2ca02aecc8de6d5e8a1c3af0556fe (esc) |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
27 b\x00362fef284ce2ca02aecc8de6d5e8a1c3af0556fe (esc) |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
28 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
29 Submanifest is stored in separate revlog |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
30 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
31 $ mkdir dir1 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
32 $ echo 1 > dir1/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
33 $ echo 1 > dir1/b |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
34 $ echo 1 > e |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
35 $ hg ci -Aqm 'add dir1' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
36 $ hg debugdata -m 1 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
37 a\x00362fef284ce2ca02aecc8de6d5e8a1c3af0556fe (esc) |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
38 b\x00362fef284ce2ca02aecc8de6d5e8a1c3af0556fe (esc) |
27271
2a31433a59ba
manifest: use 't' for tree manifest flag
Martin von Zweigbergk <martinvonz@google.com>
parents:
27251
diff
changeset
|
39 dir1\x008b3ffd73f901e83304c83d33132c8e774ceac44et (esc) |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
40 e\x00b8e02f6433738021a065f94175c7cd23db5f05be (esc) |
25119
49c583ca48c4
treemanifest: add --dir option to debug{revlog,data,index}
Martin von Zweigbergk <martinvonz@google.com>
parents:
25091
diff
changeset
|
41 $ hg debugdata --dir dir1 0 |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
42 a\x00b8e02f6433738021a065f94175c7cd23db5f05be (esc) |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
43 b\x00b8e02f6433738021a065f94175c7cd23db5f05be (esc) |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
44 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
45 Can add nested directories |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
46 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
47 $ mkdir dir1/dir1 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
48 $ echo 2 > dir1/dir1/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
49 $ echo 2 > dir1/dir1/b |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
50 $ mkdir dir1/dir2 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
51 $ echo 2 > dir1/dir2/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
52 $ echo 2 > dir1/dir2/b |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
53 $ hg ci -Aqm 'add dir1/dir1' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
54 $ hg files -r . |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
55 a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
56 b |
25153
1929d9c84028
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25119
diff
changeset
|
57 dir1/a (glob) |
1929d9c84028
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25119
diff
changeset
|
58 dir1/b (glob) |
1929d9c84028
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25119
diff
changeset
|
59 dir1/dir1/a (glob) |
1929d9c84028
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25119
diff
changeset
|
60 dir1/dir1/b (glob) |
1929d9c84028
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25119
diff
changeset
|
61 dir1/dir2/a (glob) |
1929d9c84028
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25119
diff
changeset
|
62 dir1/dir2/b (glob) |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
63 e |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
64 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
65 Revision is not created for unchanged directory |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
66 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
67 $ mkdir dir2 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
68 $ echo 3 > dir2/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
69 $ hg add dir2 |
25153
1929d9c84028
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25119
diff
changeset
|
70 adding dir2/a (glob) |
25119
49c583ca48c4
treemanifest: add --dir option to debug{revlog,data,index}
Martin von Zweigbergk <martinvonz@google.com>
parents:
25091
diff
changeset
|
71 $ hg debugindex --dir dir1 > before |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
72 $ hg ci -qm 'add dir2' |
25119
49c583ca48c4
treemanifest: add --dir option to debug{revlog,data,index}
Martin von Zweigbergk <martinvonz@google.com>
parents:
25091
diff
changeset
|
73 $ hg debugindex --dir dir1 > after |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
74 $ diff before after |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
75 $ rm before after |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
76 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
77 Removing directory does not create an revlog entry |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
78 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
79 $ hg rm dir1/dir1 |
25153
1929d9c84028
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25119
diff
changeset
|
80 removing dir1/dir1/a (glob) |
1929d9c84028
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25119
diff
changeset
|
81 removing dir1/dir1/b (glob) |
25119
49c583ca48c4
treemanifest: add --dir option to debug{revlog,data,index}
Martin von Zweigbergk <martinvonz@google.com>
parents:
25091
diff
changeset
|
82 $ hg debugindex --dir dir1/dir1 > before |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
83 $ hg ci -qm 'remove dir1/dir1' |
25119
49c583ca48c4
treemanifest: add --dir option to debug{revlog,data,index}
Martin von Zweigbergk <martinvonz@google.com>
parents:
25091
diff
changeset
|
84 $ hg debugindex --dir dir1/dir1 > after |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
85 $ diff before after |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
86 $ rm before after |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
87 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
88 Check that hg files (calls treemanifest.walk()) works |
25222
0de132d5328a
treemanifest: lazily load manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
25153
diff
changeset
|
89 without loading all directory revlogs |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
90 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
91 $ hg co 'desc("add dir2")' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
92 2 files updated, 0 files merged, 0 files removed, 0 files unresolved |
25222
0de132d5328a
treemanifest: lazily load manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
25153
diff
changeset
|
93 $ mv .hg/store/meta/dir2 .hg/store/meta/dir2-backup |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
94 $ hg files -r . dir1 |
25153
1929d9c84028
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25119
diff
changeset
|
95 dir1/a (glob) |
1929d9c84028
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25119
diff
changeset
|
96 dir1/b (glob) |
1929d9c84028
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25119
diff
changeset
|
97 dir1/dir1/a (glob) |
1929d9c84028
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25119
diff
changeset
|
98 dir1/dir1/b (glob) |
1929d9c84028
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25119
diff
changeset
|
99 dir1/dir2/a (glob) |
1929d9c84028
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25119
diff
changeset
|
100 dir1/dir2/b (glob) |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
101 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
102 Check that status between revisions works (calls treemanifest.matches()) |
25222
0de132d5328a
treemanifest: lazily load manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
25153
diff
changeset
|
103 without loading all directory revlogs |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
104 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
105 $ hg status --rev 'desc("add dir1")' --rev . dir1 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
106 A dir1/dir1/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
107 A dir1/dir1/b |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
108 A dir1/dir2/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
109 A dir1/dir2/b |
25222
0de132d5328a
treemanifest: lazily load manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
25153
diff
changeset
|
110 $ mv .hg/store/meta/dir2-backup .hg/store/meta/dir2 |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
111 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
112 Merge creates 2-parent revision of directory revlog |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
113 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
114 $ echo 5 > dir1/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
115 $ hg ci -Aqm 'modify dir1/a' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
116 $ hg co '.^' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
117 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
118 $ echo 6 > dir1/b |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
119 $ hg ci -Aqm 'modify dir1/b' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
120 $ hg merge 'desc("modify dir1/a")' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
121 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
122 (branch merge, don't forget to commit) |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
123 $ hg ci -m 'conflict-free merge involving dir1/' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
124 $ cat dir1/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
125 5 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
126 $ cat dir1/b |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
127 6 |
25119
49c583ca48c4
treemanifest: add --dir option to debug{revlog,data,index}
Martin von Zweigbergk <martinvonz@google.com>
parents:
25091
diff
changeset
|
128 $ hg debugindex --dir dir1 |
26920
4d1a96bb831f
test: enable generaldelta early in 'test-treemanifest.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25398
diff
changeset
|
129 rev offset length delta linkrev nodeid p1 p2 |
4d1a96bb831f
test: enable generaldelta early in 'test-treemanifest.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25398
diff
changeset
|
130 0 0 54 -1 1 8b3ffd73f901 000000000000 000000000000 |
27271
2a31433a59ba
manifest: use 't' for tree manifest flag
Martin von Zweigbergk <martinvonz@google.com>
parents:
27251
diff
changeset
|
131 1 54 68 0 2 68e9d057c5a8 8b3ffd73f901 000000000000 |
2a31433a59ba
manifest: use 't' for tree manifest flag
Martin von Zweigbergk <martinvonz@google.com>
parents:
27251
diff
changeset
|
132 2 122 12 1 4 4698198d2624 68e9d057c5a8 000000000000 |
2a31433a59ba
manifest: use 't' for tree manifest flag
Martin von Zweigbergk <martinvonz@google.com>
parents:
27251
diff
changeset
|
133 3 134 55 1 5 44844058ccce 68e9d057c5a8 000000000000 |
2a31433a59ba
manifest: use 't' for tree manifest flag
Martin von Zweigbergk <martinvonz@google.com>
parents:
27251
diff
changeset
|
134 4 189 55 1 6 bf3d9b744927 68e9d057c5a8 000000000000 |
2a31433a59ba
manifest: use 't' for tree manifest flag
Martin von Zweigbergk <martinvonz@google.com>
parents:
27251
diff
changeset
|
135 5 244 55 4 7 dde7c0af2a03 bf3d9b744927 44844058ccce |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
136 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
137 Merge keeping directory from parent 1 does not create revlog entry. (Note that |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
138 dir1's manifest does change, but only because dir1/a's filelog changes.) |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
139 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
140 $ hg co 'desc("add dir2")' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
141 2 files updated, 0 files merged, 0 files removed, 0 files unresolved |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
142 $ echo 8 > dir2/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
143 $ hg ci -m 'modify dir2/a' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
144 created new head |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
145 |
25119
49c583ca48c4
treemanifest: add --dir option to debug{revlog,data,index}
Martin von Zweigbergk <martinvonz@google.com>
parents:
25091
diff
changeset
|
146 $ hg debugindex --dir dir2 > before |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
147 $ hg merge 'desc("modify dir1/a")' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
148 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
149 (branch merge, don't forget to commit) |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
150 $ hg revert -r 'desc("modify dir2/a")' . |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
151 reverting dir1/a (glob) |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
152 $ hg ci -m 'merge, keeping parent 1' |
25119
49c583ca48c4
treemanifest: add --dir option to debug{revlog,data,index}
Martin von Zweigbergk <martinvonz@google.com>
parents:
25091
diff
changeset
|
153 $ hg debugindex --dir dir2 > after |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
154 $ diff before after |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
155 $ rm before after |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
156 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
157 Merge keeping directory from parent 2 does not create revlog entry. (Note that |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
158 dir2's manifest does change, but only because dir2/a's filelog changes.) |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
159 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
160 $ hg co 'desc("modify dir2/a")' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
161 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
25119
49c583ca48c4
treemanifest: add --dir option to debug{revlog,data,index}
Martin von Zweigbergk <martinvonz@google.com>
parents:
25091
diff
changeset
|
162 $ hg debugindex --dir dir1 > before |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
163 $ hg merge 'desc("modify dir1/a")' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
164 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
165 (branch merge, don't forget to commit) |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
166 $ hg revert -r 'desc("modify dir1/a")' . |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
167 reverting dir2/a (glob) |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
168 $ hg ci -m 'merge, keeping parent 2' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
169 created new head |
25119
49c583ca48c4
treemanifest: add --dir option to debug{revlog,data,index}
Martin von Zweigbergk <martinvonz@google.com>
parents:
25091
diff
changeset
|
170 $ hg debugindex --dir dir1 > after |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
171 $ diff before after |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
172 $ rm before after |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
173 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
174 Create flat source repo for tests with mixed flat/tree manifests |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
175 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
176 $ cd .. |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
177 $ hg init repo-flat |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
178 $ cd repo-flat |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
179 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
180 Create a few commits with flat manifest |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
181 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
182 $ echo 0 > a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
183 $ echo 0 > b |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
184 $ echo 0 > e |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
185 $ for d in dir1 dir1/dir1 dir1/dir2 dir2 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
186 > do |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
187 > mkdir $d |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
188 > echo 0 > $d/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
189 > echo 0 > $d/b |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
190 > done |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
191 $ hg ci -Aqm initial |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
192 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
193 $ echo 1 > a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
194 $ echo 1 > dir1/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
195 $ echo 1 > dir1/dir1/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
196 $ hg ci -Aqm 'modify on branch 1' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
197 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
198 $ hg co 0 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
199 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
200 $ echo 2 > b |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
201 $ echo 2 > dir1/b |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
202 $ echo 2 > dir1/dir1/b |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
203 $ hg ci -Aqm 'modify on branch 2' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
204 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
205 $ hg merge 1 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
206 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
207 (branch merge, don't forget to commit) |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
208 $ hg ci -m 'merge of flat manifests to new flat manifest' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
209 |
27953
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
210 $ hg serve -p $HGPORT -d --pid-file=hg.pid --errorlog=errors.log |
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
211 $ cat hg.pid >> $DAEMON_PIDS |
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
212 |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
213 Create clone with tree manifests enabled |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
214 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
215 $ cd .. |
27953
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
216 $ hg clone --config experimental.treemanifest=1 \ |
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
217 > http://localhost:$HGPORT repo-mixed -r 1 |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
218 adding changesets |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
219 adding manifests |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
220 adding file changes |
27953
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
221 added 2 changesets with 14 changes to 11 files |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
222 updating to branch default |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
223 11 files updated, 0 files merged, 0 files removed, 0 files unresolved |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
224 $ cd repo-mixed |
27952
c5ffbd4c033b
tests: minor cleanup to treemanifest test
Martin von Zweigbergk <martinvonz@google.com>
parents:
27946
diff
changeset
|
225 $ test -d .hg/store/meta |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
226 [1] |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
227 $ grep treemanifest .hg/requires |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
228 treemanifest |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
229 |
27953
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
230 Should be possible to push updates from flat to tree manifest repo |
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
231 |
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
232 $ hg -R ../repo-flat push ssh://user@dummy/repo-mixed |
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
233 pushing to ssh://user@dummy/repo-mixed |
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
234 searching for changes |
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
235 remote: adding changesets |
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
236 remote: adding manifests |
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
237 remote: adding file changes |
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
238 remote: added 2 changesets with 3 changes to 3 files |
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
239 |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
240 Commit should store revlog per directory |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
241 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
242 $ hg co 1 |
27953
88609cfa3745
changegroup: fix pulling to treemanifest repo from flat repo (issue5066)
Martin von Zweigbergk <martinvonz@google.com>
parents:
27952
diff
changeset
|
243 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
244 $ echo 3 > a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
245 $ echo 3 > dir1/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
246 $ echo 3 > dir1/dir1/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
247 $ hg ci -m 'first tree' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
248 created new head |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
249 $ find .hg/store/meta | sort |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
250 .hg/store/meta |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
251 .hg/store/meta/dir1 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
252 .hg/store/meta/dir1/00manifest.i |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
253 .hg/store/meta/dir1/dir1 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
254 .hg/store/meta/dir1/dir1/00manifest.i |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
255 .hg/store/meta/dir1/dir2 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
256 .hg/store/meta/dir1/dir2/00manifest.i |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
257 .hg/store/meta/dir2 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
258 .hg/store/meta/dir2/00manifest.i |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
259 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
260 Merge of two trees |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
261 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
262 $ hg co 2 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
263 6 files updated, 0 files merged, 0 files removed, 0 files unresolved |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
264 $ hg merge 1 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
265 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
266 (branch merge, don't forget to commit) |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
267 $ hg ci -m 'merge of flat manifests to new tree manifest' |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
268 created new head |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
269 $ hg diff -r 3 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
270 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
271 Parent of tree root manifest should be flat manifest, and two for merge |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
272 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
273 $ hg debugindex -m |
26920
4d1a96bb831f
test: enable generaldelta early in 'test-treemanifest.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25398
diff
changeset
|
274 rev offset length delta linkrev nodeid p1 p2 |
4d1a96bb831f
test: enable generaldelta early in 'test-treemanifest.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25398
diff
changeset
|
275 0 0 80 -1 0 40536115ed9e 000000000000 000000000000 |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
276 1 80 83 0 1 f3376063c255 40536115ed9e 000000000000 |
26920
4d1a96bb831f
test: enable generaldelta early in 'test-treemanifest.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25398
diff
changeset
|
277 2 163 89 0 2 5d9b9da231a2 40536115ed9e 000000000000 |
4d1a96bb831f
test: enable generaldelta early in 'test-treemanifest.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25398
diff
changeset
|
278 3 252 83 2 3 d17d663cbd8a 5d9b9da231a2 f3376063c255 |
27271
2a31433a59ba
manifest: use 't' for tree manifest flag
Martin von Zweigbergk <martinvonz@google.com>
parents:
27251
diff
changeset
|
279 4 335 124 1 4 51e32a8c60ee f3376063c255 000000000000 |
2a31433a59ba
manifest: use 't' for tree manifest flag
Martin von Zweigbergk <martinvonz@google.com>
parents:
27251
diff
changeset
|
280 5 459 126 2 5 cc5baa78b230 5d9b9da231a2 f3376063c255 |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
281 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
282 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
283 Status across flat/tree boundary should work |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
284 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
285 $ hg status --rev '.^' --rev . |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
286 M a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
287 M dir1/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
288 M dir1/dir1/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
289 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
290 |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
291 Turning off treemanifest config has no effect |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
292 |
27952
c5ffbd4c033b
tests: minor cleanup to treemanifest test
Martin von Zweigbergk <martinvonz@google.com>
parents:
27946
diff
changeset
|
293 $ hg debugindex --dir dir1 |
26920
4d1a96bb831f
test: enable generaldelta early in 'test-treemanifest.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25398
diff
changeset
|
294 rev offset length delta linkrev nodeid p1 p2 |
27271
2a31433a59ba
manifest: use 't' for tree manifest flag
Martin von Zweigbergk <martinvonz@google.com>
parents:
27251
diff
changeset
|
295 0 0 127 -1 4 064927a0648a 000000000000 000000000000 |
2a31433a59ba
manifest: use 't' for tree manifest flag
Martin von Zweigbergk <martinvonz@google.com>
parents:
27251
diff
changeset
|
296 1 127 111 0 5 25ecb8cb8618 000000000000 000000000000 |
25091
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
297 $ echo 2 > dir1/a |
b5052fc73300
treemanifest: store submanifest revlog per directory
Martin von Zweigbergk <martinvonz@google.com>
parents:
diff
changeset
|
298 $ hg --config experimental.treemanifest=False ci -qm 'modify dir1/a' |
27952
c5ffbd4c033b
tests: minor cleanup to treemanifest test
Martin von Zweigbergk <martinvonz@google.com>
parents:
27946
diff
changeset
|
299 $ hg debugindex --dir dir1 |
26920
4d1a96bb831f
test: enable generaldelta early in 'test-treemanifest.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25398
diff
changeset
|
300 rev offset length delta linkrev nodeid p1 p2 |
27271
2a31433a59ba
manifest: use 't' for tree manifest flag
Martin von Zweigbergk <martinvonz@google.com>
parents:
27251
diff
changeset
|
301 0 0 127 -1 4 064927a0648a 000000000000 000000000000 |
2a31433a59ba
manifest: use 't' for tree manifest flag
Martin von Zweigbergk <martinvonz@google.com>
parents:
27251
diff
changeset
|
302 1 127 111 0 5 25ecb8cb8618 000000000000 000000000000 |
2a31433a59ba
manifest: use 't' for tree manifest flag
Martin von Zweigbergk <martinvonz@google.com>
parents:
27251
diff
changeset
|
303 2 238 55 1 6 5b16163a30c6 25ecb8cb8618 000000000000 |
25231
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
304 |
27930
7cbb3a01fa38
repair: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27752
diff
changeset
|
305 Stripping and recovering changes should work |
7cbb3a01fa38
repair: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27752
diff
changeset
|
306 |
7cbb3a01fa38
repair: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27752
diff
changeset
|
307 $ hg st --change tip |
7cbb3a01fa38
repair: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27752
diff
changeset
|
308 M dir1/a |
7cbb3a01fa38
repair: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27752
diff
changeset
|
309 $ hg --config extensions.strip= strip tip |
7cbb3a01fa38
repair: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27752
diff
changeset
|
310 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
7cbb3a01fa38
repair: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27752
diff
changeset
|
311 saved backup bundle to $TESTTMP/repo-mixed/.hg/strip-backup/51cfd7b1e13b-78a2f3ed-backup.hg (glob) |
7cbb3a01fa38
repair: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27752
diff
changeset
|
312 $ hg unbundle -q .hg/strip-backup/* |
7cbb3a01fa38
repair: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27752
diff
changeset
|
313 $ hg st --change tip |
7cbb3a01fa38
repair: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27752
diff
changeset
|
314 M dir1/a |
7cbb3a01fa38
repair: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27752
diff
changeset
|
315 |
27931
1289a122cf3f
shelve: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27930
diff
changeset
|
316 Shelving and unshelving should work |
1289a122cf3f
shelve: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27930
diff
changeset
|
317 |
1289a122cf3f
shelve: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27930
diff
changeset
|
318 $ echo foo >> dir1/a |
1289a122cf3f
shelve: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27930
diff
changeset
|
319 $ hg --config extensions.shelve= shelve |
1289a122cf3f
shelve: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27930
diff
changeset
|
320 shelved as default |
1289a122cf3f
shelve: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27930
diff
changeset
|
321 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
1289a122cf3f
shelve: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27930
diff
changeset
|
322 $ hg --config extensions.shelve= unshelve |
1289a122cf3f
shelve: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27930
diff
changeset
|
323 unshelving change 'default' |
1289a122cf3f
shelve: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27930
diff
changeset
|
324 $ hg diff --nodates |
1289a122cf3f
shelve: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27930
diff
changeset
|
325 diff -r 708a273da119 dir1/a |
1289a122cf3f
shelve: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27930
diff
changeset
|
326 --- a/dir1/a |
1289a122cf3f
shelve: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27930
diff
changeset
|
327 +++ b/dir1/a |
1289a122cf3f
shelve: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27930
diff
changeset
|
328 @@ -1,1 +1,2 @@ |
1289a122cf3f
shelve: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27930
diff
changeset
|
329 1 |
1289a122cf3f
shelve: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27930
diff
changeset
|
330 +foo |
1289a122cf3f
shelve: use cg3 for treemanifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
27930
diff
changeset
|
331 |
27938
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
332 Pushing from treemanifest repo to an empty repo makes that a treemanifest repo |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
333 |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
334 $ cd .. |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
335 $ hg init empty-repo |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
336 $ cat << EOF >> empty-repo/.hg/hgrc |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
337 > [experimental] |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
338 > changegroup3=yes |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
339 > EOF |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
340 $ grep treemanifest empty-repo/.hg/requires |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
341 [1] |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
342 $ hg push -R repo -r 0 empty-repo |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
343 pushing to empty-repo |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
344 searching for changes |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
345 adding changesets |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
346 adding manifests |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
347 adding file changes |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
348 added 1 changesets with 2 changes to 2 files |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
349 $ grep treemanifest empty-repo/.hg/requires |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
350 treemanifest |
cabac7dfc621
exchange: set 'treemanifest' param on pushed changegroups too
Martin von Zweigbergk <martinvonz@google.com>
parents:
27931
diff
changeset
|
351 |
27946
ca8d2b73155d
changegroup: fix treemanifest exchange code (issue5061)
Augie Fackler <augie@google.com>
parents:
27938
diff
changeset
|
352 Pushing to an empty repo works |
ca8d2b73155d
changegroup: fix treemanifest exchange code (issue5061)
Augie Fackler <augie@google.com>
parents:
27938
diff
changeset
|
353 |
ca8d2b73155d
changegroup: fix treemanifest exchange code (issue5061)
Augie Fackler <augie@google.com>
parents:
27938
diff
changeset
|
354 $ hg --config experimental.treemanifest=1 init clone |
ca8d2b73155d
changegroup: fix treemanifest exchange code (issue5061)
Augie Fackler <augie@google.com>
parents:
27938
diff
changeset
|
355 $ grep treemanifest clone/.hg/requires |
ca8d2b73155d
changegroup: fix treemanifest exchange code (issue5061)
Augie Fackler <augie@google.com>
parents:
27938
diff
changeset
|
356 treemanifest |
ca8d2b73155d
changegroup: fix treemanifest exchange code (issue5061)
Augie Fackler <augie@google.com>
parents:
27938
diff
changeset
|
357 $ hg push -R repo clone |
ca8d2b73155d
changegroup: fix treemanifest exchange code (issue5061)
Augie Fackler <augie@google.com>
parents:
27938
diff
changeset
|
358 pushing to clone |
ca8d2b73155d
changegroup: fix treemanifest exchange code (issue5061)
Augie Fackler <augie@google.com>
parents:
27938
diff
changeset
|
359 searching for changes |
ca8d2b73155d
changegroup: fix treemanifest exchange code (issue5061)
Augie Fackler <augie@google.com>
parents:
27938
diff
changeset
|
360 adding changesets |
ca8d2b73155d
changegroup: fix treemanifest exchange code (issue5061)
Augie Fackler <augie@google.com>
parents:
27938
diff
changeset
|
361 adding manifests |
ca8d2b73155d
changegroup: fix treemanifest exchange code (issue5061)
Augie Fackler <augie@google.com>
parents:
27938
diff
changeset
|
362 adding file changes |
ca8d2b73155d
changegroup: fix treemanifest exchange code (issue5061)
Augie Fackler <augie@google.com>
parents:
27938
diff
changeset
|
363 added 11 changesets with 15 changes to 10 files (+3 heads) |
ca8d2b73155d
changegroup: fix treemanifest exchange code (issue5061)
Augie Fackler <augie@google.com>
parents:
27938
diff
changeset
|
364 $ grep treemanifest clone/.hg/requires |
ca8d2b73155d
changegroup: fix treemanifest exchange code (issue5061)
Augie Fackler <augie@google.com>
parents:
27938
diff
changeset
|
365 treemanifest |
28240
1ac8ce137377
changegroup: fix treemanifests on merges
Martin von Zweigbergk <martinvonz@google.com>
parents:
28214
diff
changeset
|
366 $ hg -R clone verify |
1ac8ce137377
changegroup: fix treemanifests on merges
Martin von Zweigbergk <martinvonz@google.com>
parents:
28214
diff
changeset
|
367 checking changesets |
1ac8ce137377
changegroup: fix treemanifests on merges
Martin von Zweigbergk <martinvonz@google.com>
parents:
28214
diff
changeset
|
368 checking manifests |
1ac8ce137377
changegroup: fix treemanifests on merges
Martin von Zweigbergk <martinvonz@google.com>
parents:
28214
diff
changeset
|
369 checking directory manifests |
1ac8ce137377
changegroup: fix treemanifests on merges
Martin von Zweigbergk <martinvonz@google.com>
parents:
28214
diff
changeset
|
370 crosschecking files in changesets and manifests |
1ac8ce137377
changegroup: fix treemanifests on merges
Martin von Zweigbergk <martinvonz@google.com>
parents:
28214
diff
changeset
|
371 checking files |
1ac8ce137377
changegroup: fix treemanifests on merges
Martin von Zweigbergk <martinvonz@google.com>
parents:
28214
diff
changeset
|
372 10 files, 11 changesets, 15 total revisions |
27946
ca8d2b73155d
changegroup: fix treemanifest exchange code (issue5061)
Augie Fackler <augie@google.com>
parents:
27938
diff
changeset
|
373 |
25231
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
374 Create deeper repo with tree manifests. |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
375 |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
376 $ hg --config experimental.treemanifest=True init deeprepo |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
377 $ cd deeprepo |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
378 |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
379 $ mkdir .A |
25231
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
380 $ mkdir b |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
381 $ mkdir b/bar |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
382 $ mkdir b/bar/orange |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
383 $ mkdir b/bar/orange/fly |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
384 $ mkdir b/foo |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
385 $ mkdir b/foo/apple |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
386 $ mkdir b/foo/apple/bees |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
387 |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
388 $ touch .A/one.txt |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
389 $ touch .A/two.txt |
25231
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
390 $ touch b/bar/fruits.txt |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
391 $ touch b/bar/orange/fly/gnat.py |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
392 $ touch b/bar/orange/fly/housefly.txt |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
393 $ touch b/foo/apple/bees/flower.py |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
394 $ touch c.txt |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
395 $ touch d.py |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
396 |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
397 $ hg ci -Aqm 'initial' |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
398 |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
399 We'll see that visitdir works by removing some treemanifest revlogs and running |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
400 the files command with various parameters. |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
401 |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
402 Test files from the root. |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
403 |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
404 $ hg files -r . |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
405 .A/one.txt (glob) |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
406 .A/two.txt (glob) |
25299
4f07fb1d7fbb
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25231
diff
changeset
|
407 b/bar/fruits.txt (glob) |
4f07fb1d7fbb
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25231
diff
changeset
|
408 b/bar/orange/fly/gnat.py (glob) |
4f07fb1d7fbb
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25231
diff
changeset
|
409 b/bar/orange/fly/housefly.txt (glob) |
4f07fb1d7fbb
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25231
diff
changeset
|
410 b/foo/apple/bees/flower.py (glob) |
25231
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
411 c.txt |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
412 d.py |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
413 |
25362
20ad936ac5d2
treemanifest: visit directory 'foo' when given e.g. '-X foo/ba?'
Martin von Zweigbergk <martinvonz@google.com>
parents:
25299
diff
changeset
|
414 Excludes with a glob should not exclude everything from the glob's root |
20ad936ac5d2
treemanifest: visit directory 'foo' when given e.g. '-X foo/ba?'
Martin von Zweigbergk <martinvonz@google.com>
parents:
25299
diff
changeset
|
415 |
20ad936ac5d2
treemanifest: visit directory 'foo' when given e.g. '-X foo/ba?'
Martin von Zweigbergk <martinvonz@google.com>
parents:
25299
diff
changeset
|
416 $ hg files -r . -X 'b/fo?' b |
25398
633d07045494
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25362
diff
changeset
|
417 b/bar/fruits.txt (glob) |
633d07045494
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25362
diff
changeset
|
418 b/bar/orange/fly/gnat.py (glob) |
633d07045494
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25362
diff
changeset
|
419 b/bar/orange/fly/housefly.txt (glob) |
28005
ed94b24a3bb2
tests: simplify treemanifest test by backing up entire .hg/store
Martin von Zweigbergk <martinvonz@google.com>
parents:
27953
diff
changeset
|
420 $ cp -r .hg/store .hg/store-copy |
25362
20ad936ac5d2
treemanifest: visit directory 'foo' when given e.g. '-X foo/ba?'
Martin von Zweigbergk <martinvonz@google.com>
parents:
25299
diff
changeset
|
421 |
25231
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
422 Test files for a subdirectory. |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
423 |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
424 $ rm -r .hg/store/meta/~2e_a |
25231
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
425 $ hg files -r . b |
25299
4f07fb1d7fbb
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25231
diff
changeset
|
426 b/bar/fruits.txt (glob) |
4f07fb1d7fbb
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25231
diff
changeset
|
427 b/bar/orange/fly/gnat.py (glob) |
4f07fb1d7fbb
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25231
diff
changeset
|
428 b/bar/orange/fly/housefly.txt (glob) |
4f07fb1d7fbb
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25231
diff
changeset
|
429 b/foo/apple/bees/flower.py (glob) |
28214
408446e4b10c
treemanifest: use "cp xyz/." instead of "cp xyz/*"
Tony Tung <tonytung@merly.org>
parents:
28204
diff
changeset
|
430 $ cp -r .hg/store-copy/. .hg/store |
25231
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
431 |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
432 Test files with just includes and excludes. |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
433 |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
434 $ rm -r .hg/store/meta/~2e_a |
28005
ed94b24a3bb2
tests: simplify treemanifest test by backing up entire .hg/store
Martin von Zweigbergk <martinvonz@google.com>
parents:
27953
diff
changeset
|
435 $ rm -r .hg/store/meta/b/bar/orange/fly |
ed94b24a3bb2
tests: simplify treemanifest test by backing up entire .hg/store
Martin von Zweigbergk <martinvonz@google.com>
parents:
27953
diff
changeset
|
436 $ rm -r .hg/store/meta/b/foo/apple/bees |
25362
20ad936ac5d2
treemanifest: visit directory 'foo' when given e.g. '-X foo/ba?'
Martin von Zweigbergk <martinvonz@google.com>
parents:
25299
diff
changeset
|
437 $ hg files -r . -I path:b/bar -X path:b/bar/orange/fly -I path:b/foo -X path:b/foo/apple/bees |
25299
4f07fb1d7fbb
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25231
diff
changeset
|
438 b/bar/fruits.txt (glob) |
28214
408446e4b10c
treemanifest: use "cp xyz/." instead of "cp xyz/*"
Tony Tung <tonytung@merly.org>
parents:
28204
diff
changeset
|
439 $ cp -r .hg/store-copy/. .hg/store |
25231
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
440 |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
441 Test files for a subdirectory, excluding a directory within it. |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
442 |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
443 $ rm -r .hg/store/meta/~2e_a |
28005
ed94b24a3bb2
tests: simplify treemanifest test by backing up entire .hg/store
Martin von Zweigbergk <martinvonz@google.com>
parents:
27953
diff
changeset
|
444 $ rm -r .hg/store/meta/b/foo |
25362
20ad936ac5d2
treemanifest: visit directory 'foo' when given e.g. '-X foo/ba?'
Martin von Zweigbergk <martinvonz@google.com>
parents:
25299
diff
changeset
|
445 $ hg files -r . -X path:b/foo b |
25299
4f07fb1d7fbb
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25231
diff
changeset
|
446 b/bar/fruits.txt (glob) |
4f07fb1d7fbb
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25231
diff
changeset
|
447 b/bar/orange/fly/gnat.py (glob) |
4f07fb1d7fbb
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25231
diff
changeset
|
448 b/bar/orange/fly/housefly.txt (glob) |
28214
408446e4b10c
treemanifest: use "cp xyz/." instead of "cp xyz/*"
Tony Tung <tonytung@merly.org>
parents:
28204
diff
changeset
|
449 $ cp -r .hg/store-copy/. .hg/store |
25231
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
450 |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
451 Test files for a sub directory, including only a directory within it, and |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
452 including an unrelated directory. |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
453 |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
454 $ rm -r .hg/store/meta/~2e_a |
28005
ed94b24a3bb2
tests: simplify treemanifest test by backing up entire .hg/store
Martin von Zweigbergk <martinvonz@google.com>
parents:
27953
diff
changeset
|
455 $ rm -r .hg/store/meta/b/foo |
25362
20ad936ac5d2
treemanifest: visit directory 'foo' when given e.g. '-X foo/ba?'
Martin von Zweigbergk <martinvonz@google.com>
parents:
25299
diff
changeset
|
456 $ hg files -r . -I path:b/bar/orange -I path:a b |
25299
4f07fb1d7fbb
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25231
diff
changeset
|
457 b/bar/orange/fly/gnat.py (glob) |
4f07fb1d7fbb
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25231
diff
changeset
|
458 b/bar/orange/fly/housefly.txt (glob) |
28214
408446e4b10c
treemanifest: use "cp xyz/." instead of "cp xyz/*"
Tony Tung <tonytung@merly.org>
parents:
28204
diff
changeset
|
459 $ cp -r .hg/store-copy/. .hg/store |
25231
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
460 |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
461 Test files for a pattern, including a directory, and excluding a directory |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
462 within that. |
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
463 |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
464 $ rm -r .hg/store/meta/~2e_a |
28005
ed94b24a3bb2
tests: simplify treemanifest test by backing up entire .hg/store
Martin von Zweigbergk <martinvonz@google.com>
parents:
27953
diff
changeset
|
465 $ rm -r .hg/store/meta/b/foo |
ed94b24a3bb2
tests: simplify treemanifest test by backing up entire .hg/store
Martin von Zweigbergk <martinvonz@google.com>
parents:
27953
diff
changeset
|
466 $ rm -r .hg/store/meta/b/bar/orange |
25362
20ad936ac5d2
treemanifest: visit directory 'foo' when given e.g. '-X foo/ba?'
Martin von Zweigbergk <martinvonz@google.com>
parents:
25299
diff
changeset
|
467 $ hg files -r . glob:**.txt -I path:b/bar -X path:b/bar/orange |
25299
4f07fb1d7fbb
test-treemanifest: add globs for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
25231
diff
changeset
|
468 b/bar/fruits.txt (glob) |
28214
408446e4b10c
treemanifest: use "cp xyz/." instead of "cp xyz/*"
Tony Tung <tonytung@merly.org>
parents:
28204
diff
changeset
|
469 $ cp -r .hg/store-copy/. .hg/store |
25231
8545bd381504
match: have visitdir() consider includes and excludes
Drew Gottlieb <drgott@google.com>
parents:
25222
diff
changeset
|
470 |
27432
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
471 Add some more changes to the deep repo |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
472 $ echo narf >> b/bar/fruits.txt |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
473 $ hg ci -m narf |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
474 $ echo troz >> b/bar/orange/fly/gnat.py |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
475 $ hg ci -m troz |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
476 |
28031
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
477 Verify works |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
478 $ hg verify |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
479 checking changesets |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
480 checking manifests |
28203
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
481 checking directory manifests |
28031
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
482 crosschecking files in changesets and manifests |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
483 checking files |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
484 8 files, 3 changesets, 10 total revisions |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
485 |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
486 Dirlogs are included in fncache |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
487 $ grep meta/.A/00manifest.i .hg/store/fncache |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
488 meta/.A/00manifest.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
489 |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
490 Rebuilt fncache includes dirlogs |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
491 $ rm .hg/store/fncache |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
492 $ hg debugrebuildfncache |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
493 adding data/.A/one.txt.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
494 adding data/.A/two.txt.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
495 adding data/b/bar/fruits.txt.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
496 adding data/b/bar/orange/fly/gnat.py.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
497 adding data/b/bar/orange/fly/housefly.txt.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
498 adding data/b/foo/apple/bees/flower.py.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
499 adding data/c.txt.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
500 adding data/d.py.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
501 adding meta/.A/00manifest.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
502 adding meta/b/00manifest.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
503 adding meta/b/bar/00manifest.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
504 adding meta/b/bar/orange/00manifest.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
505 adding meta/b/bar/orange/fly/00manifest.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
506 adding meta/b/foo/00manifest.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
507 adding meta/b/foo/apple/00manifest.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
508 adding meta/b/foo/apple/bees/00manifest.i |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
509 16 items added, 0 removed from fncache |
6f248ba85309
treemanifest: fix debugrebuildfncache
Martin von Zweigbergk <martinvonz@google.com>
parents:
28007
diff
changeset
|
510 |
28168
1a943a3a78ea
tests: put test-treemanifest.t on a port diet
timeless <timeless@mozdev.org>
parents:
28063
diff
changeset
|
511 Finish first server |
1a943a3a78ea
tests: put test-treemanifest.t on a port diet
timeless <timeless@mozdev.org>
parents:
28063
diff
changeset
|
512 $ killdaemons.py |
1a943a3a78ea
tests: put test-treemanifest.t on a port diet
timeless <timeless@mozdev.org>
parents:
28063
diff
changeset
|
513 |
28203
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
514 Back up the recently added revlogs |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
515 $ cp -r .hg/store .hg/store-newcopy |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
516 |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
517 Verify reports missing dirlog |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
518 $ rm .hg/store/meta/b/00manifest.* |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
519 $ hg verify |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
520 checking changesets |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
521 checking manifests |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
522 checking directory manifests |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
523 0: empty or missing b/ |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
524 b/@0: parent-directory manifest refers to unknown revision 67688a370455 |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
525 b/@1: parent-directory manifest refers to unknown revision f38e85d334c5 |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
526 b/@2: parent-directory manifest refers to unknown revision 99c9792fd4b0 |
28204
962921c330b0
verify: check for orphaned dirlogs
Martin von Zweigbergk <martinvonz@google.com>
parents:
28203
diff
changeset
|
527 warning: orphan revlog 'meta/b/bar/00manifest.i' |
962921c330b0
verify: check for orphaned dirlogs
Martin von Zweigbergk <martinvonz@google.com>
parents:
28203
diff
changeset
|
528 warning: orphan revlog 'meta/b/bar/orange/00manifest.i' |
962921c330b0
verify: check for orphaned dirlogs
Martin von Zweigbergk <martinvonz@google.com>
parents:
28203
diff
changeset
|
529 warning: orphan revlog 'meta/b/bar/orange/fly/00manifest.i' |
962921c330b0
verify: check for orphaned dirlogs
Martin von Zweigbergk <martinvonz@google.com>
parents:
28203
diff
changeset
|
530 warning: orphan revlog 'meta/b/foo/00manifest.i' |
962921c330b0
verify: check for orphaned dirlogs
Martin von Zweigbergk <martinvonz@google.com>
parents:
28203
diff
changeset
|
531 warning: orphan revlog 'meta/b/foo/apple/00manifest.i' |
962921c330b0
verify: check for orphaned dirlogs
Martin von Zweigbergk <martinvonz@google.com>
parents:
28203
diff
changeset
|
532 warning: orphan revlog 'meta/b/foo/apple/bees/00manifest.i' |
28203
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
533 crosschecking files in changesets and manifests |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
534 b/bar/fruits.txt@0: in changeset but not in manifest |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
535 b/bar/orange/fly/gnat.py@0: in changeset but not in manifest |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
536 b/bar/orange/fly/housefly.txt@0: in changeset but not in manifest |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
537 b/foo/apple/bees/flower.py@0: in changeset but not in manifest |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
538 checking files |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
539 8 files, 3 changesets, 10 total revisions |
28204
962921c330b0
verify: check for orphaned dirlogs
Martin von Zweigbergk <martinvonz@google.com>
parents:
28203
diff
changeset
|
540 6 warnings encountered! |
28203
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
541 8 integrity errors encountered! |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
542 (first damaged changeset appears to be 0) |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
543 [1] |
28335
515018f64c41
tests: Solaris cp doesn't support the -T option
Danek Duvall <danek.duvall@oracle.com>
parents:
28240
diff
changeset
|
544 $ cp -r .hg/store-newcopy/. .hg/store |
28203
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
545 |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
546 Verify reports missing dirlog entry |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
547 $ mv -f .hg/store-copy/meta/b/00manifest.* .hg/store/meta/b/ |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
548 $ hg verify |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
549 checking changesets |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
550 checking manifests |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
551 checking directory manifests |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
552 b/@1: parent-directory manifest refers to unknown revision f38e85d334c5 |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
553 b/@2: parent-directory manifest refers to unknown revision 99c9792fd4b0 |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
554 b/bar/@?: rev 1 points to unexpected changeset 1 |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
555 b/bar/@?: 5e03c4ee5e4a not in parent-directory manifest |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
556 b/bar/@?: rev 2 points to unexpected changeset 2 |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
557 b/bar/@?: 1b16940d66d6 not in parent-directory manifest |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
558 b/bar/orange/@?: rev 1 points to unexpected changeset 2 |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
559 (expected None) |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
560 b/bar/orange/fly/@?: rev 1 points to unexpected changeset 2 |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
561 (expected None) |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
562 crosschecking files in changesets and manifests |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
563 checking files |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
564 8 files, 3 changesets, 10 total revisions |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
565 2 warnings encountered! |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
566 8 integrity errors encountered! |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
567 (first damaged changeset appears to be 1) |
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
568 [1] |
28335
515018f64c41
tests: Solaris cp doesn't support the -T option
Danek Duvall <danek.duvall@oracle.com>
parents:
28240
diff
changeset
|
569 $ cp -r .hg/store-newcopy/. .hg/store |
28203
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
570 |
27432
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
571 Test cloning a treemanifest repo over http. |
28168
1a943a3a78ea
tests: put test-treemanifest.t on a port diet
timeless <timeless@mozdev.org>
parents:
28063
diff
changeset
|
572 $ hg serve -p $HGPORT -d --pid-file=hg.pid --errorlog=errors.log |
27432
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
573 $ cat hg.pid >> $DAEMON_PIDS |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
574 $ cd .. |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
575 We can clone even with the knob turned off and we'll get a treemanifest repo. |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
576 $ hg clone --config experimental.treemanifest=False \ |
27752
29cfc474c5fd
changegroup3: introduce experimental.changegroup3 boolean config
Martin von Zweigbergk <martinvonz@google.com>
parents:
27432
diff
changeset
|
577 > --config experimental.changegroup3=True \ |
28168
1a943a3a78ea
tests: put test-treemanifest.t on a port diet
timeless <timeless@mozdev.org>
parents:
28063
diff
changeset
|
578 > http://localhost:$HGPORT deepclone |
27432
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
579 requesting all changes |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
580 adding changesets |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
581 adding manifests |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
582 adding file changes |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
583 added 3 changesets with 10 changes to 8 files |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
584 updating to branch default |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
585 8 files updated, 0 files merged, 0 files removed, 0 files unresolved |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
586 No server errors. |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
587 $ cat deeprepo/errors.log |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
588 requires got updated to include treemanifest |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
589 $ cat deepclone/.hg/requires | grep treemanifest |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
590 treemanifest |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
591 Tree manifest revlogs exist. |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
592 $ find deepclone/.hg/store/meta | sort |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
593 deepclone/.hg/store/meta |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
594 deepclone/.hg/store/meta/b |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
595 deepclone/.hg/store/meta/b/00manifest.i |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
596 deepclone/.hg/store/meta/b/bar |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
597 deepclone/.hg/store/meta/b/bar/00manifest.i |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
598 deepclone/.hg/store/meta/b/bar/orange |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
599 deepclone/.hg/store/meta/b/bar/orange/00manifest.i |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
600 deepclone/.hg/store/meta/b/bar/orange/fly |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
601 deepclone/.hg/store/meta/b/bar/orange/fly/00manifest.i |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
602 deepclone/.hg/store/meta/b/foo |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
603 deepclone/.hg/store/meta/b/foo/00manifest.i |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
604 deepclone/.hg/store/meta/b/foo/apple |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
605 deepclone/.hg/store/meta/b/foo/apple/00manifest.i |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
606 deepclone/.hg/store/meta/b/foo/apple/bees |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
607 deepclone/.hg/store/meta/b/foo/apple/bees/00manifest.i |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
608 deepclone/.hg/store/meta/~2e_a |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
609 deepclone/.hg/store/meta/~2e_a/00manifest.i |
27432
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
610 Verify passes. |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
611 $ cd deepclone |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
612 $ hg verify |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
613 checking changesets |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
614 checking manifests |
28203
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
615 checking directory manifests |
27432
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
616 crosschecking files in changesets and manifests |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
617 checking files |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
618 8 files, 3 changesets, 10 total revisions |
77d25b913f80
changegroup: introduce cg3, which has support for exchanging treemanifests
Augie Fackler <augie@google.com>
parents:
27271
diff
changeset
|
619 $ cd .. |
28006
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
620 |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
621 Create clones using old repo formats to use in later tests |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
622 $ hg clone --config format.usestore=False \ |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
623 > --config experimental.changegroup3=True \ |
28168
1a943a3a78ea
tests: put test-treemanifest.t on a port diet
timeless <timeless@mozdev.org>
parents:
28063
diff
changeset
|
624 > http://localhost:$HGPORT deeprepo-basicstore |
28006
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
625 requesting all changes |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
626 adding changesets |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
627 adding manifests |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
628 adding file changes |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
629 added 3 changesets with 10 changes to 8 files |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
630 updating to branch default |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
631 8 files updated, 0 files merged, 0 files removed, 0 files unresolved |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
632 $ cd deeprepo-basicstore |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
633 $ grep store .hg/requires |
28006
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
634 [1] |
28168
1a943a3a78ea
tests: put test-treemanifest.t on a port diet
timeless <timeless@mozdev.org>
parents:
28063
diff
changeset
|
635 $ hg serve -p $HGPORT1 -d --pid-file=hg.pid --errorlog=errors.log |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
636 $ cat hg.pid >> $DAEMON_PIDS |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
637 $ cd .. |
28006
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
638 $ hg clone --config format.usefncache=False \ |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
639 > --config experimental.changegroup3=True \ |
28168
1a943a3a78ea
tests: put test-treemanifest.t on a port diet
timeless <timeless@mozdev.org>
parents:
28063
diff
changeset
|
640 > http://localhost:$HGPORT deeprepo-encodedstore |
28006
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
641 requesting all changes |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
642 adding changesets |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
643 adding manifests |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
644 adding file changes |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
645 added 3 changesets with 10 changes to 8 files |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
646 updating to branch default |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
647 8 files updated, 0 files merged, 0 files removed, 0 files unresolved |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
648 $ cd deeprepo-encodedstore |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
649 $ grep fncache .hg/requires |
28006
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
650 [1] |
28168
1a943a3a78ea
tests: put test-treemanifest.t on a port diet
timeless <timeless@mozdev.org>
parents:
28063
diff
changeset
|
651 $ hg serve -p $HGPORT2 -d --pid-file=hg.pid --errorlog=errors.log |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
652 $ cat hg.pid >> $DAEMON_PIDS |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
653 $ cd .. |
28006
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
654 |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
655 Local clone with basicstore |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
656 $ hg clone -U deeprepo-basicstore local-clone-basicstore |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
657 $ hg -R local-clone-basicstore verify |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
658 checking changesets |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
659 checking manifests |
28203
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
660 checking directory manifests |
28006
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
661 crosschecking files in changesets and manifests |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
662 checking files |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
663 8 files, 3 changesets, 10 total revisions |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
664 |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
665 Local clone with encodedstore |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
666 $ hg clone -U deeprepo-encodedstore local-clone-encodedstore |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
667 $ hg -R local-clone-encodedstore verify |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
668 checking changesets |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
669 checking manifests |
28203
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
670 checking directory manifests |
28006
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
671 crosschecking files in changesets and manifests |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
672 checking files |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
673 8 files, 3 changesets, 10 total revisions |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
674 |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
675 Local clone with fncachestore |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
676 $ hg clone -U deeprepo local-clone-fncachestore |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
677 $ hg -R local-clone-fncachestore verify |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
678 checking changesets |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
679 checking manifests |
28203
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
680 checking directory manifests |
28006
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
681 crosschecking files in changesets and manifests |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
682 checking files |
bb45190a54b7
treemanifests: fix local clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28005
diff
changeset
|
683 8 files, 3 changesets, 10 total revisions |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
684 |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
685 Stream clone with basicstore |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
686 $ hg clone --config experimental.changegroup3=True --uncompressed -U \ |
28168
1a943a3a78ea
tests: put test-treemanifest.t on a port diet
timeless <timeless@mozdev.org>
parents:
28063
diff
changeset
|
687 > http://localhost:$HGPORT1 stream-clone-basicstore |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
688 streaming all changes |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
689 18 files to transfer, * of data (glob) |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
690 transferred * in * seconds (*) (glob) |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
691 searching for changes |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
692 no changes found |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
693 $ hg -R stream-clone-basicstore verify |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
694 checking changesets |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
695 checking manifests |
28203
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
696 checking directory manifests |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
697 crosschecking files in changesets and manifests |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
698 checking files |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
699 8 files, 3 changesets, 10 total revisions |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
700 |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
701 Stream clone with encodedstore |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
702 $ hg clone --config experimental.changegroup3=True --uncompressed -U \ |
28168
1a943a3a78ea
tests: put test-treemanifest.t on a port diet
timeless <timeless@mozdev.org>
parents:
28063
diff
changeset
|
703 > http://localhost:$HGPORT2 stream-clone-encodedstore |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
704 streaming all changes |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
705 18 files to transfer, * of data (glob) |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
706 transferred * in * seconds (*) (glob) |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
707 searching for changes |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
708 no changes found |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
709 $ hg -R stream-clone-encodedstore verify |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
710 checking changesets |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
711 checking manifests |
28203
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
712 checking directory manifests |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
713 crosschecking files in changesets and manifests |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
714 checking files |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
715 8 files, 3 changesets, 10 total revisions |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
716 |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
717 Stream clone with fncachestore |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
718 $ hg clone --config experimental.changegroup3=True --uncompressed -U \ |
28168
1a943a3a78ea
tests: put test-treemanifest.t on a port diet
timeless <timeless@mozdev.org>
parents:
28063
diff
changeset
|
719 > http://localhost:$HGPORT stream-clone-fncachestore |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
720 streaming all changes |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
721 18 files to transfer, * of data (glob) |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
722 transferred * in * seconds (*) (glob) |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
723 searching for changes |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
724 no changes found |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
725 $ hg -R stream-clone-fncachestore verify |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
726 checking changesets |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
727 checking manifests |
28203
7297e9e13a8a
verify: check directory manifests
Martin von Zweigbergk <martinvonz@google.com>
parents:
28168
diff
changeset
|
728 checking directory manifests |
28007
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
729 crosschecking files in changesets and manifests |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
730 checking files |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
731 8 files, 3 changesets, 10 total revisions |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
732 |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
733 Packed bundle |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
734 $ hg -R deeprepo debugcreatestreamclonebundle repo-packed.hg |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
735 writing 3349 bytes for 18 files |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
736 bundle requirements: generaldelta, revlogv1, treemanifest |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
737 $ hg debugbundle --spec repo-packed.hg |
fb92927f9775
treemanifests: fix streaming clone
Martin von Zweigbergk <martinvonz@google.com>
parents:
28006
diff
changeset
|
738 none-packed1;requirements%3Dgeneraldelta%2Crevlogv1%2Ctreemanifest |
28669
c4b727795d6a
bundle: avoid crash when no good changegroup version found
Martin von Zweigbergk <martinvonz@google.com>
parents:
28335
diff
changeset
|
739 |
c4b727795d6a
bundle: avoid crash when no good changegroup version found
Martin von Zweigbergk <martinvonz@google.com>
parents:
28335
diff
changeset
|
740 Bundle with changegroup2 is not supported |
c4b727795d6a
bundle: avoid crash when no good changegroup version found
Martin von Zweigbergk <martinvonz@google.com>
parents:
28335
diff
changeset
|
741 |
c4b727795d6a
bundle: avoid crash when no good changegroup version found
Martin von Zweigbergk <martinvonz@google.com>
parents:
28335
diff
changeset
|
742 $ hg -R deeprepo bundle --all -t v2 deeprepo.bundle |
c4b727795d6a
bundle: avoid crash when no good changegroup version found
Martin von Zweigbergk <martinvonz@google.com>
parents:
28335
diff
changeset
|
743 abort: repository does not support bundle version 02 |
c4b727795d6a
bundle: avoid crash when no good changegroup version found
Martin von Zweigbergk <martinvonz@google.com>
parents:
28335
diff
changeset
|
744 [255] |