Mercurial > hg
annotate tests/test-share.t @ 46334:4b0192f592cf
share: move share safe functionality out of experimental
The share-safe functionality is complete and all configuration options are
implemented. The behavior is well discussed on mailing list and in reviews.
Let's unmark this as experimental to solve a chichen and egg issue.
Differential Revision: https://phab.mercurial-scm.org/D9823
author | Pulkit Goyal <7895pulkit@gmail.com> |
---|---|
date | Mon, 18 Jan 2021 19:16:49 +0530 |
parents | 95a615dd77bf |
children | 8be95673eb8a |
rev | line source |
---|---|
45483
d252f51ab032
share: introduce config option to store requires in .hg/store
Pulkit Goyal <7895pulkit@gmail.com>
parents:
45301
diff
changeset
|
1 #testcases safe normal |
d252f51ab032
share: introduce config option to store requires in .hg/store
Pulkit Goyal <7895pulkit@gmail.com>
parents:
45301
diff
changeset
|
2 |
d252f51ab032
share: introduce config option to store requires in .hg/store
Pulkit Goyal <7895pulkit@gmail.com>
parents:
45301
diff
changeset
|
3 #if safe |
d252f51ab032
share: introduce config option to store requires in .hg/store
Pulkit Goyal <7895pulkit@gmail.com>
parents:
45301
diff
changeset
|
4 $ echo "[format]" >> $HGRCPATH |
46334
4b0192f592cf
share: move share safe functionality out of experimental
Pulkit Goyal <7895pulkit@gmail.com>
parents:
46314
diff
changeset
|
5 $ echo "use-share-safe = True" >> $HGRCPATH |
45483
d252f51ab032
share: introduce config option to store requires in .hg/store
Pulkit Goyal <7895pulkit@gmail.com>
parents:
45301
diff
changeset
|
6 #endif |
d252f51ab032
share: introduce config option to store requires in .hg/store
Pulkit Goyal <7895pulkit@gmail.com>
parents:
45301
diff
changeset
|
7 |
12487 | 8 $ echo "[extensions]" >> $HGRCPATH |
9 $ echo "share = " >> $HGRCPATH | |
10 | |
11 prepare repo1 | |
9990 | 12 |
12487 | 13 $ hg init repo1 |
14 $ cd repo1 | |
15 $ echo a > a | |
16 $ hg commit -A -m'init' | |
17 adding a | |
18 | |
19 share it | |
9990 | 20 |
12487 | 21 $ cd .. |
22 $ hg share repo1 repo2 | |
23 updating working directory | |
24 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
25 | |
26 share shouldn't have a store dir | |
27 | |
28 $ cd repo2 | |
29 $ test -d .hg/store | |
30 [1] | |
42419
69883775b27d
root: add template variables pointing to repository directories
Yuya Nishihara <yuya@tcha.org>
parents:
42313
diff
changeset
|
31 $ hg root -Tjson | sed 's|\\\\|\\|g' |
69883775b27d
root: add template variables pointing to repository directories
Yuya Nishihara <yuya@tcha.org>
parents:
42313
diff
changeset
|
32 [ |
69883775b27d
root: add template variables pointing to repository directories
Yuya Nishihara <yuya@tcha.org>
parents:
42313
diff
changeset
|
33 { |
69883775b27d
root: add template variables pointing to repository directories
Yuya Nishihara <yuya@tcha.org>
parents:
42313
diff
changeset
|
34 "hgpath": "$TESTTMP/repo2/.hg", |
69883775b27d
root: add template variables pointing to repository directories
Yuya Nishihara <yuya@tcha.org>
parents:
42313
diff
changeset
|
35 "reporoot": "$TESTTMP/repo2", |
69883775b27d
root: add template variables pointing to repository directories
Yuya Nishihara <yuya@tcha.org>
parents:
42313
diff
changeset
|
36 "storepath": "$TESTTMP/repo1/.hg/store" |
69883775b27d
root: add template variables pointing to repository directories
Yuya Nishihara <yuya@tcha.org>
parents:
42313
diff
changeset
|
37 } |
69883775b27d
root: add template variables pointing to repository directories
Yuya Nishihara <yuya@tcha.org>
parents:
42313
diff
changeset
|
38 ] |
9990 | 39 |
40670
bd0874977a5e
checkexec: create destination directory if necessary
Boris Feld <boris.feld@octobus.net>
parents:
39848
diff
changeset
|
40 share shouldn't have a full cache dir, original repo should |
33539
460733327640
share: share 'cachevfs' with the source clone (issue5108)
Boris Feld <boris.feld@octobus.net>
parents:
33212
diff
changeset
|
41 |
460733327640
share: share 'cachevfs' with the source clone (issue5108)
Boris Feld <boris.feld@octobus.net>
parents:
33212
diff
changeset
|
42 $ hg branches |
460733327640
share: share 'cachevfs' with the source clone (issue5108)
Boris Feld <boris.feld@octobus.net>
parents:
33212
diff
changeset
|
43 default 0:d3873e73d99e |
460733327640
share: share 'cachevfs' with the source clone (issue5108)
Boris Feld <boris.feld@octobus.net>
parents:
33212
diff
changeset
|
44 $ hg tags |
460733327640
share: share 'cachevfs' with the source clone (issue5108)
Boris Feld <boris.feld@octobus.net>
parents:
33212
diff
changeset
|
45 tip 0:d3873e73d99e |
40792
47e3f554df35
check-exec: write file in 'wcache' instead of 'cache'
Boris Feld <boris.feld@octobus.net>
parents:
40674
diff
changeset
|
46 $ test -d .hg/cache |
47e3f554df35
check-exec: write file in 'wcache' instead of 'cache'
Boris Feld <boris.feld@octobus.net>
parents:
40674
diff
changeset
|
47 [1] |
47e3f554df35
check-exec: write file in 'wcache' instead of 'cache'
Boris Feld <boris.feld@octobus.net>
parents:
40674
diff
changeset
|
48 $ ls -1 .hg/wcache || true |
40674
25b7c4cb5de1
tests: stabilize the recent checkexec changes on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
40670
diff
changeset
|
49 checkisexec (execbit !) |
25b7c4cb5de1
tests: stabilize the recent checkexec changes on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
40670
diff
changeset
|
50 checklink (symlink !) |
25b7c4cb5de1
tests: stabilize the recent checkexec changes on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
40670
diff
changeset
|
51 checklink-target (symlink !) |
41965
e4ac7e63c213
manifestcache: use `wcache` directory for manifest cache
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
41891
diff
changeset
|
52 manifestfulltextcache (reporevlogstore !) |
33539
460733327640
share: share 'cachevfs' with the source clone (issue5108)
Boris Feld <boris.feld@octobus.net>
parents:
33212
diff
changeset
|
53 $ ls -1 ../repo1/.hg/cache |
460733327640
share: share 'cachevfs' with the source clone (issue5108)
Boris Feld <boris.feld@octobus.net>
parents:
33212
diff
changeset
|
54 branch2-served |
460733327640
share: share 'cachevfs' with the source clone (issue5108)
Boris Feld <boris.feld@octobus.net>
parents:
33212
diff
changeset
|
55 rbc-names-v1 |
460733327640
share: share 'cachevfs' with the source clone (issue5108)
Boris Feld <boris.feld@octobus.net>
parents:
33212
diff
changeset
|
56 rbc-revs-v1 |
460733327640
share: share 'cachevfs' with the source clone (issue5108)
Boris Feld <boris.feld@octobus.net>
parents:
33212
diff
changeset
|
57 tags2-visible |
460733327640
share: share 'cachevfs' with the source clone (issue5108)
Boris Feld <boris.feld@octobus.net>
parents:
33212
diff
changeset
|
58 |
46123
5b9bb4e9a3bf
share: properly copy cache files when cloning from a share
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
59 Cloning a shared repo should pick up the full cache dir on the other hand. |
5b9bb4e9a3bf
share: properly copy cache files when cloning from a share
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
60 |
5b9bb4e9a3bf
share: properly copy cache files when cloning from a share
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
61 $ hg clone . ../repo2-clone |
5b9bb4e9a3bf
share: properly copy cache files when cloning from a share
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
62 updating to branch default |
5b9bb4e9a3bf
share: properly copy cache files when cloning from a share
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
63 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
5b9bb4e9a3bf
share: properly copy cache files when cloning from a share
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
64 $ ls -1 ../repo2-clone/.hg/cache |
46314
95a615dd77bf
clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46123
diff
changeset
|
65 branch2-base |
95a615dd77bf
clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46123
diff
changeset
|
66 branch2-immutable |
46123
5b9bb4e9a3bf
share: properly copy cache files when cloning from a share
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
67 branch2-served |
46314
95a615dd77bf
clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46123
diff
changeset
|
68 branch2-served.hidden |
95a615dd77bf
clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46123
diff
changeset
|
69 branch2-visible |
95a615dd77bf
clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46123
diff
changeset
|
70 branch2-visible-hidden |
95a615dd77bf
clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46123
diff
changeset
|
71 hgtagsfnodes1 |
46123
5b9bb4e9a3bf
share: properly copy cache files when cloning from a share
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
72 rbc-names-v1 |
5b9bb4e9a3bf
share: properly copy cache files when cloning from a share
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
73 rbc-revs-v1 |
46314
95a615dd77bf
clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46123
diff
changeset
|
74 tags2 |
95a615dd77bf
clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46123
diff
changeset
|
75 tags2-served |
46123
5b9bb4e9a3bf
share: properly copy cache files when cloning from a share
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
76 tags2-visible |
5b9bb4e9a3bf
share: properly copy cache files when cloning from a share
Joerg Sonnenberger <joerg@bec.de>
parents:
45906
diff
changeset
|
77 |
12487 | 78 Some sed versions appends newline, some don't, and some just fails |
79 | |
80 $ cat .hg/sharedpath; echo | |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
33986
diff
changeset
|
81 $TESTTMP/repo1/.hg |
12487 | 82 |
15101
a21ccf4412d5
share: allow trailing newline on .hg/sharedpath.
Greg Ward <greg@gerg.ca>
parents:
15080
diff
changeset
|
83 trailing newline on .hg/sharedpath is ok |
a21ccf4412d5
share: allow trailing newline on .hg/sharedpath.
Greg Ward <greg@gerg.ca>
parents:
15080
diff
changeset
|
84 $ hg tip -q |
a21ccf4412d5
share: allow trailing newline on .hg/sharedpath.
Greg Ward <greg@gerg.ca>
parents:
15080
diff
changeset
|
85 0:d3873e73d99e |
a21ccf4412d5
share: allow trailing newline on .hg/sharedpath.
Greg Ward <greg@gerg.ca>
parents:
15080
diff
changeset
|
86 $ echo '' >> .hg/sharedpath |
a21ccf4412d5
share: allow trailing newline on .hg/sharedpath.
Greg Ward <greg@gerg.ca>
parents:
15080
diff
changeset
|
87 $ cat .hg/sharedpath |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
33986
diff
changeset
|
88 $TESTTMP/repo1/.hg |
15101
a21ccf4412d5
share: allow trailing newline on .hg/sharedpath.
Greg Ward <greg@gerg.ca>
parents:
15080
diff
changeset
|
89 $ hg tip -q |
a21ccf4412d5
share: allow trailing newline on .hg/sharedpath.
Greg Ward <greg@gerg.ca>
parents:
15080
diff
changeset
|
90 0:d3873e73d99e |
a21ccf4412d5
share: allow trailing newline on .hg/sharedpath.
Greg Ward <greg@gerg.ca>
parents:
15080
diff
changeset
|
91 |
12487 | 92 commit in shared clone |
93 | |
94 $ echo a >> a | |
95 $ hg commit -m'change in shared clone' | |
96 | |
97 check original | |
9990 | 98 |
12487 | 99 $ cd ../repo1 |
100 $ hg log | |
101 changeset: 1:8af4dc49db9e | |
102 tag: tip | |
103 user: test | |
104 date: Thu Jan 01 00:00:00 1970 +0000 | |
105 summary: change in shared clone | |
106 | |
107 changeset: 0:d3873e73d99e | |
108 user: test | |
109 date: Thu Jan 01 00:00:00 1970 +0000 | |
110 summary: init | |
111 | |
112 $ hg update | |
113 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
114 $ cat a # should be two lines of "a" | |
115 a | |
116 a | |
9990 | 117 |
12487 | 118 commit in original |
119 | |
120 $ echo b > b | |
121 $ hg commit -A -m'another file' | |
122 adding b | |
123 | |
124 check in shared clone | |
9990 | 125 |
12487 | 126 $ cd ../repo2 |
127 $ hg log | |
128 changeset: 2:c2e0ac586386 | |
129 tag: tip | |
130 user: test | |
131 date: Thu Jan 01 00:00:00 1970 +0000 | |
132 summary: another file | |
133 | |
134 changeset: 1:8af4dc49db9e | |
135 user: test | |
136 date: Thu Jan 01 00:00:00 1970 +0000 | |
137 summary: change in shared clone | |
138 | |
139 changeset: 0:d3873e73d99e | |
140 user: test | |
141 date: Thu Jan 01 00:00:00 1970 +0000 | |
142 summary: init | |
143 | |
144 $ hg update | |
145 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
146 $ cat b # should exist with one "b" | |
147 b | |
9990 | 148 |
12487 | 149 hg serve shared clone |
9990 | 150 |
12487 | 151 $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid |
152 $ cat hg.pid >> $DAEMON_PIDS | |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
23614
diff
changeset
|
153 $ get-with-headers.py localhost:$HGPORT 'raw-file/' |
12487 | 154 200 Script output follows |
155 | |
156 | |
157 -rw-r--r-- 4 a | |
158 -rw-r--r-- 2 b | |
159 | |
160 | |
41792
2d835c42ab41
bundle2: don't send "shared" requirement when cloning from a share
mitchell plamann <mplamann@janestreet.com>
parents:
41791
diff
changeset
|
161 Cloning a shared repo via bundle2 results in a non-shared clone |
41791
a62ad1be1671
tests: demonstrate failure when cloning from a share via bundle2
mitchell plamann <mplamann@janestreet.com>
parents:
40807
diff
changeset
|
162 |
a62ad1be1671
tests: demonstrate failure when cloning from a share via bundle2
mitchell plamann <mplamann@janestreet.com>
parents:
40807
diff
changeset
|
163 $ cd .. |
41891
e82c932c01e3
tests: stabilize test-share.t on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
41792
diff
changeset
|
164 $ hg clone -q --stream --config ui.ssh="\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/`pwd`/repo2 cloned-via-bundle2 |
41791
a62ad1be1671
tests: demonstrate failure when cloning from a share via bundle2
mitchell plamann <mplamann@janestreet.com>
parents:
40807
diff
changeset
|
165 $ cat ./cloned-via-bundle2/.hg/requires | grep "shared" |
41792
2d835c42ab41
bundle2: don't send "shared" requirement when cloning from a share
mitchell plamann <mplamann@janestreet.com>
parents:
41791
diff
changeset
|
166 [1] |
41791
a62ad1be1671
tests: demonstrate failure when cloning from a share via bundle2
mitchell plamann <mplamann@janestreet.com>
parents:
40807
diff
changeset
|
167 $ hg id --cwd cloned-via-bundle2 -r tip |
41792
2d835c42ab41
bundle2: don't send "shared" requirement when cloning from a share
mitchell plamann <mplamann@janestreet.com>
parents:
41791
diff
changeset
|
168 c2e0ac586386 tip |
41791
a62ad1be1671
tests: demonstrate failure when cloning from a share via bundle2
mitchell plamann <mplamann@janestreet.com>
parents:
40807
diff
changeset
|
169 $ cd repo2 |
15080
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
170 |
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
171 test unshare command |
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
172 |
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
173 $ hg unshare |
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
174 $ test -d .hg/store |
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
175 $ test -f .hg/sharedpath |
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
176 [1] |
31211
ecbd378d9a7e
share: fix typo to drop 'shared' requirement on unshare
Yuya Nishihara <yuya@tcha.org>
parents:
31133
diff
changeset
|
177 $ grep shared .hg/requires |
ecbd378d9a7e
share: fix typo to drop 'shared' requirement on unshare
Yuya Nishihara <yuya@tcha.org>
parents:
31133
diff
changeset
|
178 [1] |
15080
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
179 $ hg unshare |
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
180 abort: this is not a shared repo |
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
181 [255] |
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
182 |
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
183 check that a change does not propagate |
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
184 |
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
185 $ echo b >> b |
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
186 $ hg commit -m'change in unshared' |
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
187 $ cd ../repo1 |
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
188 $ hg id -r tip |
574dc5d74f9b
test: test unshare command
Simon Heimberg <simohe@besonet.ch>
parents:
12640
diff
changeset
|
189 c2e0ac586386 tip |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
15447
diff
changeset
|
190 |
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
15447
diff
changeset
|
191 $ cd .. |
17539
bc7377160fa7
tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents:
17017
diff
changeset
|
192 |
23548
141baca16059
share: implement shared bookmark functionality
Ryan McElroy <rmcelroy@fb.com>
parents:
22046
diff
changeset
|
193 |
31892
9e67ce5c4fd0
largefiles: set the extension as enabled locally after a share requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents:
31767
diff
changeset
|
194 non largefiles repos won't enable largefiles |
9e67ce5c4fd0
largefiles: set the extension as enabled locally after a share requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents:
31767
diff
changeset
|
195 |
42313
81ece800576a
tests: separate out bookmarks tests from test-share.t
Martin von Zweigbergk <martinvonz@google.com>
parents:
41965
diff
changeset
|
196 $ hg share --config extensions.largefiles= repo2 sharedrepo |
33212
fe0667cc521e
tests: add fsmonitor specific output lines at enabling largefiles
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
31892
diff
changeset
|
197 The fsmonitor extension is incompatible with the largefiles extension and has been disabled. (fsmonitor !) |
fe0667cc521e
tests: add fsmonitor specific output lines at enabling largefiles
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
31892
diff
changeset
|
198 The fsmonitor extension is incompatible with the largefiles extension and has been disabled. (fsmonitor !) |
31892
9e67ce5c4fd0
largefiles: set the extension as enabled locally after a share requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents:
31767
diff
changeset
|
199 updating working directory |
9e67ce5c4fd0
largefiles: set the extension as enabled locally after a share requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents:
31767
diff
changeset
|
200 2 files updated, 0 files merged, 0 files removed, 0 files unresolved |
9e67ce5c4fd0
largefiles: set the extension as enabled locally after a share requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents:
31767
diff
changeset
|
201 $ [ -f sharedrepo/.hg/hgrc ] |
9e67ce5c4fd0
largefiles: set the extension as enabled locally after a share requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents:
31767
diff
changeset
|
202 [1] |
9e67ce5c4fd0
largefiles: set the extension as enabled locally after a share requiring it
Matt Harbison <matt_harbison@yahoo.com>
parents:
31767
diff
changeset
|
203 |
31133
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
204 test shared clones using relative paths work |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
205 |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
206 $ mkdir thisdir |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
207 $ hg init thisdir/orig |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
208 $ hg share -U thisdir/orig thisdir/abs |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
209 $ hg share -U --relative thisdir/abs thisdir/rel |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
210 $ cat thisdir/rel/.hg/sharedpath |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
33986
diff
changeset
|
211 ../../orig/.hg (no-eol) |
31133
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
212 $ grep shared thisdir/*/.hg/requires |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
213 thisdir/abs/.hg/requires:shared |
39848
4ece3cdfd907
localrepo: support shared repo creation
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39696
diff
changeset
|
214 thisdir/rel/.hg/requires:relshared |
31133
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
215 thisdir/rel/.hg/requires:shared |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
216 |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
217 test that relative shared paths aren't relative to $PWD |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
218 |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
219 $ cd thisdir |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
220 $ hg -R rel root |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
33986
diff
changeset
|
221 $TESTTMP/thisdir/rel |
31133
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
222 $ cd .. |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
223 |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
224 now test that relative paths really are relative, survive across |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
225 renames and changes of PWD |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
226 |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
227 $ hg -R thisdir/abs root |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
33986
diff
changeset
|
228 $TESTTMP/thisdir/abs |
31133
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
229 $ hg -R thisdir/rel root |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
33986
diff
changeset
|
230 $TESTTMP/thisdir/rel |
31133
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
231 $ mv thisdir thatdir |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
232 $ hg -R thatdir/abs root |
45906
95c4cca641f6
errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents:
45483
diff
changeset
|
233 abort: .hg/sharedpath points to nonexistent directory $TESTTMP/thisdir/orig/.hg |
31133
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
234 [255] |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
235 $ hg -R thatdir/rel root |
35393
4441705b7111
tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents:
33986
diff
changeset
|
236 $TESTTMP/thatdir/rel |
31212
344121b30f32
share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents:
31211
diff
changeset
|
237 |
344121b30f32
share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents:
31211
diff
changeset
|
238 test unshare relshared repo |
344121b30f32
share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents:
31211
diff
changeset
|
239 |
344121b30f32
share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents:
31211
diff
changeset
|
240 $ cd thatdir/rel |
344121b30f32
share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents:
31211
diff
changeset
|
241 $ hg unshare |
344121b30f32
share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents:
31211
diff
changeset
|
242 $ test -d .hg/store |
344121b30f32
share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents:
31211
diff
changeset
|
243 $ test -f .hg/sharedpath |
344121b30f32
share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents:
31211
diff
changeset
|
244 [1] |
344121b30f32
share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents:
31211
diff
changeset
|
245 $ grep shared .hg/requires |
344121b30f32
share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents:
31211
diff
changeset
|
246 [1] |
344121b30f32
share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents:
31211
diff
changeset
|
247 $ hg unshare |
344121b30f32
share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents:
31211
diff
changeset
|
248 abort: this is not a shared repo |
344121b30f32
share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents:
31211
diff
changeset
|
249 [255] |
344121b30f32
share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents:
31211
diff
changeset
|
250 $ cd ../.. |
344121b30f32
share: drop 'relshared' requirement as well
Yuya Nishihara <yuya@tcha.org>
parents:
31211
diff
changeset
|
251 |
31133
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
252 $ rm -r thatdir |
23080c03a604
share: add --relative flag to store a relative path to the source
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
31052
diff
changeset
|
253 |
39696
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
254 Demonstrate buggy behavior around requirements validation |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
255 See comment in localrepo.py:makelocalrepository() for more. |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
256 |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
257 $ hg init sharenewrequires |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
258 $ hg share sharenewrequires shareoldrequires |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
259 updating working directory |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
260 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
261 |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
262 $ cat >> sharenewrequires/.hg/requires << EOF |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
263 > missing-requirement |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
264 > EOF |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
265 |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
266 We cannot open the repo with the unknown requirement |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
267 |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
268 $ hg -R sharenewrequires status |
45906
95c4cca641f6
errors: remove trailing "!" from some error messages for consistency
Martin von Zweigbergk <martinvonz@google.com>
parents:
45483
diff
changeset
|
269 abort: repository requires features unknown to this Mercurial: missing-requirement |
39696
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
270 (see https://mercurial-scm.org/wiki/MissingRequirement for more information) |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
271 [255] |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
272 |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
273 BUG: we don't get the same error when opening the shared repo pointing to it |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
274 |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
275 $ hg -R shareoldrequires status |
9de1a1c83cd7
localrepo: document and test bug around opening shared repos
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39323
diff
changeset
|
276 |
17539
bc7377160fa7
tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents:
17017
diff
changeset
|
277 Explicitly kill daemons to let the test exit on Windows |
bc7377160fa7
tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents:
17017
diff
changeset
|
278 |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
279 $ killdaemons.py |
17539
bc7377160fa7
tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents:
17017
diff
changeset
|
280 |
45301
dc283bc7e033
localrepo: abort creating a shared repo if the source does not have store
Pulkit Goyal <7895pulkit@gmail.com>
parents:
42419
diff
changeset
|
281 Test sharing a repository which was created with store requirement disable |
dc283bc7e033
localrepo: abort creating a shared repo if the source does not have store
Pulkit Goyal <7895pulkit@gmail.com>
parents:
42419
diff
changeset
|
282 |
dc283bc7e033
localrepo: abort creating a shared repo if the source does not have store
Pulkit Goyal <7895pulkit@gmail.com>
parents:
42419
diff
changeset
|
283 $ hg init nostore --config format.usestore=false |
46334
4b0192f592cf
share: move share safe functionality out of experimental
Pulkit Goyal <7895pulkit@gmail.com>
parents:
46314
diff
changeset
|
284 ignoring enabled 'format.use-share-safe' config because it is incompatible with disabled 'format.usestore' config (safe !) |
45301
dc283bc7e033
localrepo: abort creating a shared repo if the source does not have store
Pulkit Goyal <7895pulkit@gmail.com>
parents:
42419
diff
changeset
|
285 $ hg share nostore sharednostore |
dc283bc7e033
localrepo: abort creating a shared repo if the source does not have store
Pulkit Goyal <7895pulkit@gmail.com>
parents:
42419
diff
changeset
|
286 abort: cannot create shared repository as source was created with 'format.usestore' config disabled |
dc283bc7e033
localrepo: abort creating a shared repo if the source does not have store
Pulkit Goyal <7895pulkit@gmail.com>
parents:
42419
diff
changeset
|
287 [255] |