##// END OF EJS Templates
test-convert-mtn.t: generate files in binary mode
Patrick Mezard -
r17450:9c362a49 default
parent child Browse files
Show More
@@ -1,397 +1,399 b''
1
1
2 $ "$TESTDIR/hghave" mtn || exit 80
2 $ "$TESTDIR/hghave" mtn || exit 80
3
3
4 Monotone directory is called .monotone on *nix and monotone
4 Monotone directory is called .monotone on *nix and monotone
5 on Windows.
5 on Windows.
6
6
7 #if windows
7 #if windows
8
8
9 $ mtndir=monotone
9 $ mtndir=monotone
10
10
11 #else
11 #else
12
12
13 $ mtndir=.monotone
13 $ mtndir=.monotone
14
14
15 #endif
15 #endif
16
16
17 $ echo "[extensions]" >> $HGRCPATH
17 $ echo "[extensions]" >> $HGRCPATH
18 $ echo "convert=" >> $HGRCPATH
18 $ echo "convert=" >> $HGRCPATH
19 $ echo 'graphlog =' >> $HGRCPATH
19 $ echo 'graphlog =' >> $HGRCPATH
20
20
21 Windows version of monotone home
21 Windows version of monotone home
22
22
23 $ APPDATA=$HOME; export APPDATA
23 $ APPDATA=$HOME; export APPDATA
24
24
25 tedious monotone keys configuration
25 tedious monotone keys configuration
26 The /dev/null redirection is necessary under Windows, or
26 The /dev/null redirection is necessary under Windows, or
27 it complains about home directory permissions
27 it complains about home directory permissions
28
28
29 $ mtn --quiet genkey test@selenic.com 1>/dev/null 2>&1 <<EOF
29 $ mtn --quiet genkey test@selenic.com 1>/dev/null 2>&1 <<EOF
30 > passphrase
30 > passphrase
31 > passphrase
31 > passphrase
32 > EOF
32 > EOF
33 $ cat >> $HOME/$mtndir/monotonerc <<EOF
33 $ cat >> $HOME/$mtndir/monotonerc <<EOF
34 > function get_passphrase(keypair_id)
34 > function get_passphrase(keypair_id)
35 > return "passphrase"
35 > return "passphrase"
36 > end
36 > end
37 > EOF
37 > EOF
38
38
39 create monotone repository
39 create monotone repository
40
40
41 $ mtn db init --db=repo.mtn
41 $ mtn db init --db=repo.mtn
42 $ mtn --db=repo.mtn --branch=com.selenic.test setup workingdir
42 $ mtn --db=repo.mtn --branch=com.selenic.test setup workingdir
43 $ cd workingdir
43 $ cd workingdir
44 $ echo a > a
44 $ echo a > a
45 $ mkdir dir
45 $ mkdir dir
46 $ echo b > dir/b
46 $ echo b > dir/b
47 $ echo d > dir/d
47 $ echo d > dir/d
48 $ python -c 'file("bin", "wb").write("a\\x00b")'
48 $ python -c 'file("bin", "wb").write("a\\x00b")'
49 $ echo c > c
49 $ echo c > c
50 $ mtn add a dir/b dir/d c bin
50 $ mtn add a dir/b dir/d c bin
51 mtn: adding 'a' to workspace manifest
51 mtn: adding 'a' to workspace manifest
52 mtn: adding 'bin' to workspace manifest
52 mtn: adding 'bin' to workspace manifest
53 mtn: adding 'c' to workspace manifest
53 mtn: adding 'c' to workspace manifest
54 mtn: adding 'dir' to workspace manifest
54 mtn: adding 'dir' to workspace manifest
55 mtn: adding 'dir/b' to workspace manifest
55 mtn: adding 'dir/b' to workspace manifest
56 mtn: adding 'dir/d' to workspace manifest
56 mtn: adding 'dir/d' to workspace manifest
57 $ mtn ci -m initialize
57 $ mtn ci -m initialize
58 mtn: beginning commit on branch 'com.selenic.test'
58 mtn: beginning commit on branch 'com.selenic.test'
59 mtn: committed revision 0f6e5e4f2e7d2a8ef312408f57618abf026afd90
59 mtn: committed revision 0f6e5e4f2e7d2a8ef312408f57618abf026afd90
60
60
61 update monotone working directory
61 update monotone working directory
62
62
63 $ mtn mv a dir/a
63 $ mtn mv a dir/a
64 mtn: skipping 'dir', already accounted for in workspace
64 mtn: skipping 'dir', already accounted for in workspace
65 mtn: renaming 'a' to 'dir/a' in workspace manifest
65 mtn: renaming 'a' to 'dir/a' in workspace manifest
66 $ echo a >> dir/a
66 $ echo a >> dir/a
67 $ echo b >> dir/b
67 $ echo b >> dir/b
68 $ mtn drop c
68 $ mtn drop c
69 mtn: dropping 'c' from workspace manifest
69 mtn: dropping 'c' from workspace manifest
70 $ python -c 'file("bin", "wb").write("b\\x00c")'
70 $ python -c 'file("bin", "wb").write("b\\x00c")'
71 $ mtn ci -m update1
71 $ mtn ci -m update1
72 mtn: beginning commit on branch 'com.selenic.test'
72 mtn: beginning commit on branch 'com.selenic.test'
73 mtn: committed revision 51d0a982464573a2a2cf5ee2c9219c652aaebeff
73 mtn: committed revision 51d0a982464573a2a2cf5ee2c9219c652aaebeff
74 $ cd ..
74 $ cd ..
75
75
76 convert once
76 convert once
77
77
78 $ hg convert -s mtn repo.mtn
78 $ hg convert -s mtn repo.mtn
79 assuming destination repo.mtn-hg
79 assuming destination repo.mtn-hg
80 initializing destination repo.mtn-hg repository
80 initializing destination repo.mtn-hg repository
81 scanning source...
81 scanning source...
82 sorting...
82 sorting...
83 converting...
83 converting...
84 1 initialize
84 1 initialize
85 0 update1
85 0 update1
86 $ cd workingdir
86 $ cd workingdir
87 $ echo e > e
87 $ echo e > e
88 $ mtn add e
88 $ mtn add e
89 mtn: adding 'e' to workspace manifest
89 mtn: adding 'e' to workspace manifest
90 $ mtn drop dir/b
90 $ mtn drop dir/b
91 mtn: dropping 'dir/b' from workspace manifest
91 mtn: dropping 'dir/b' from workspace manifest
92 $ mtn mv bin bin2
92 $ mtn mv bin bin2
93 mtn: renaming 'bin' to 'bin2' in workspace manifest
93 mtn: renaming 'bin' to 'bin2' in workspace manifest
94 $ mtn ci -m 'update2 "with" quotes'
94 $ mtn ci -m 'update2 "with" quotes'
95 mtn: beginning commit on branch 'com.selenic.test'
95 mtn: beginning commit on branch 'com.selenic.test'
96 mtn: committed revision ebe58335d85d8cb176b6d0a12be04f5314b998da
96 mtn: committed revision ebe58335d85d8cb176b6d0a12be04f5314b998da
97
97
98 test directory move
98 test directory move
99
99
100 $ mkdir -p dir1/subdir1
100 $ mkdir -p dir1/subdir1
101 $ mkdir -p dir1/subdir2_other
101 $ mkdir -p dir1/subdir2_other
102 $ echo file1 > dir1/subdir1/file1
102 $ echo file1 > dir1/subdir1/file1
103 $ echo file2 > dir1/subdir2_other/file1
103 $ echo file2 > dir1/subdir2_other/file1
104 $ mtn add dir1/subdir1/file1 dir1/subdir2_other/file1
104 $ mtn add dir1/subdir1/file1 dir1/subdir2_other/file1
105 mtn: adding 'dir1' to workspace manifest
105 mtn: adding 'dir1' to workspace manifest
106 mtn: adding 'dir1/subdir1' to workspace manifest
106 mtn: adding 'dir1/subdir1' to workspace manifest
107 mtn: adding 'dir1/subdir1/file1' to workspace manifest
107 mtn: adding 'dir1/subdir1/file1' to workspace manifest
108 mtn: adding 'dir1/subdir2_other' to workspace manifest
108 mtn: adding 'dir1/subdir2_other' to workspace manifest
109 mtn: adding 'dir1/subdir2_other/file1' to workspace manifest
109 mtn: adding 'dir1/subdir2_other/file1' to workspace manifest
110 $ mtn ci -m createdir1
110 $ mtn ci -m createdir1
111 mtn: beginning commit on branch 'com.selenic.test'
111 mtn: beginning commit on branch 'com.selenic.test'
112 mtn: committed revision a8d62bc04fee4d2936d28e98bbcc81686dd74306
112 mtn: committed revision a8d62bc04fee4d2936d28e98bbcc81686dd74306
113 $ mtn rename dir1/subdir1 dir1/subdir2
113 $ mtn rename dir1/subdir1 dir1/subdir2
114 mtn: skipping 'dir1', already accounted for in workspace
114 mtn: skipping 'dir1', already accounted for in workspace
115 mtn: renaming 'dir1/subdir1' to 'dir1/subdir2' in workspace manifest
115 mtn: renaming 'dir1/subdir1' to 'dir1/subdir2' in workspace manifest
116 $ mtn ci -m movedir1
116 $ mtn ci -m movedir1
117 mtn: beginning commit on branch 'com.selenic.test'
117 mtn: beginning commit on branch 'com.selenic.test'
118 mtn: committed revision 2c3d241bbbfe538b1b51d910f5676407e3f4d3a6
118 mtn: committed revision 2c3d241bbbfe538b1b51d910f5676407e3f4d3a6
119
119
120 test subdirectory move
120 test subdirectory move
121
121
122 $ mtn mv dir dir2
122 $ mtn mv dir dir2
123 mtn: renaming 'dir' to 'dir2' in workspace manifest
123 mtn: renaming 'dir' to 'dir2' in workspace manifest
124 $ echo newfile > dir2/newfile
124 $ echo newfile > dir2/newfile
125 $ mtn drop dir2/d
125 $ mtn drop dir2/d
126 mtn: dropping 'dir2/d' from workspace manifest
126 mtn: dropping 'dir2/d' from workspace manifest
127 $ mtn add dir2/newfile
127 $ mtn add dir2/newfile
128 mtn: adding 'dir2/newfile' to workspace manifest
128 mtn: adding 'dir2/newfile' to workspace manifest
129 $ mtn ci -m movedir
129 $ mtn ci -m movedir
130 mtn: beginning commit on branch 'com.selenic.test'
130 mtn: beginning commit on branch 'com.selenic.test'
131 mtn: committed revision fdb5a02dae8bfce3a79b3393680af471016e1b4c
131 mtn: committed revision fdb5a02dae8bfce3a79b3393680af471016e1b4c
132
132
133 Test directory removal with empty directory
133 Test directory removal with empty directory
134
134
135 $ mkdir dir2/dir
135 $ mkdir dir2/dir
136 $ mkdir dir2/dir/subdir
136 $ mkdir dir2/dir/subdir
137 $ echo f > dir2/dir/subdir/f
137 $ echo f > dir2/dir/subdir/f
138 $ mkdir dir2/dir/emptydir
138 $ mkdir dir2/dir/emptydir
139 $ mtn add --quiet -R dir2/dir
139 $ mtn add --quiet -R dir2/dir
140 $ mtn ci -m emptydir
140 $ mtn ci -m emptydir
141 mtn: beginning commit on branch 'com.selenic.test'
141 mtn: beginning commit on branch 'com.selenic.test'
142 mtn: committed revision 8bbf76d717001d24964e4604739fdcd0f539fc88
142 mtn: committed revision 8bbf76d717001d24964e4604739fdcd0f539fc88
143 $ mtn drop -R dir2/dir
143 $ mtn drop -R dir2/dir
144 mtn: dropping 'dir2/dir/subdir/f' from workspace manifest
144 mtn: dropping 'dir2/dir/subdir/f' from workspace manifest
145 mtn: dropping 'dir2/dir/subdir' from workspace manifest
145 mtn: dropping 'dir2/dir/subdir' from workspace manifest
146 mtn: dropping 'dir2/dir/emptydir' from workspace manifest
146 mtn: dropping 'dir2/dir/emptydir' from workspace manifest
147 mtn: dropping 'dir2/dir' from workspace manifest
147 mtn: dropping 'dir2/dir' from workspace manifest
148 $ mtn ci -m dropdirectory
148 $ mtn ci -m dropdirectory
149 mtn: beginning commit on branch 'com.selenic.test'
149 mtn: beginning commit on branch 'com.selenic.test'
150 mtn: committed revision 2323d4bc324e6c82628dc04d47a9fd32ad24e322
150 mtn: committed revision 2323d4bc324e6c82628dc04d47a9fd32ad24e322
151
151
152 test directory and file move
152 test directory and file move
153
153
154 $ mkdir -p dir3/d1
154 $ mkdir -p dir3/d1
155 $ echo a > dir3/a
155 $ echo a > dir3/a
156 $ mtn add dir3/a dir3/d1
156 $ mtn add dir3/a dir3/d1
157 mtn: adding 'dir3' to workspace manifest
157 mtn: adding 'dir3' to workspace manifest
158 mtn: adding 'dir3/a' to workspace manifest
158 mtn: adding 'dir3/a' to workspace manifest
159 mtn: adding 'dir3/d1' to workspace manifest
159 mtn: adding 'dir3/d1' to workspace manifest
160 $ mtn ci -m dirfilemove
160 $ mtn ci -m dirfilemove
161 mtn: beginning commit on branch 'com.selenic.test'
161 mtn: beginning commit on branch 'com.selenic.test'
162 mtn: committed revision 47b192f720faa622f48c68d1eb075b26d405aa8b
162 mtn: committed revision 47b192f720faa622f48c68d1eb075b26d405aa8b
163 $ mtn mv dir3/a dir3/d1/a
163 $ mtn mv dir3/a dir3/d1/a
164 mtn: skipping 'dir3/d1', already accounted for in workspace
164 mtn: skipping 'dir3/d1', already accounted for in workspace
165 mtn: renaming 'dir3/a' to 'dir3/d1/a' in workspace manifest
165 mtn: renaming 'dir3/a' to 'dir3/d1/a' in workspace manifest
166 $ mtn mv dir3/d1 dir3/d2
166 $ mtn mv dir3/d1 dir3/d2
167 mtn: skipping 'dir3', already accounted for in workspace
167 mtn: skipping 'dir3', already accounted for in workspace
168 mtn: renaming 'dir3/d1' to 'dir3/d2' in workspace manifest
168 mtn: renaming 'dir3/d1' to 'dir3/d2' in workspace manifest
169 $ mtn ci -m dirfilemove2
169 $ mtn ci -m dirfilemove2
170 mtn: beginning commit on branch 'com.selenic.test'
170 mtn: beginning commit on branch 'com.selenic.test'
171 mtn: committed revision 8b543a400d3ee7f6d4bb1835b9b9e3747c8cb632
171 mtn: committed revision 8b543a400d3ee7f6d4bb1835b9b9e3747c8cb632
172
172
173 test directory move into another directory move
173 test directory move into another directory move
174
174
175 $ mkdir dir4
175 $ mkdir dir4
176 $ mkdir dir5
176 $ mkdir dir5
177 $ echo a > dir4/a
177 $ echo a > dir4/a
178 $ mtn add dir4/a dir5
178 $ mtn add dir4/a dir5
179 mtn: adding 'dir4' to workspace manifest
179 mtn: adding 'dir4' to workspace manifest
180 mtn: adding 'dir4/a' to workspace manifest
180 mtn: adding 'dir4/a' to workspace manifest
181 mtn: adding 'dir5' to workspace manifest
181 mtn: adding 'dir5' to workspace manifest
182 $ mtn ci -m dirdirmove
182 $ mtn ci -m dirdirmove
183 mtn: beginning commit on branch 'com.selenic.test'
183 mtn: beginning commit on branch 'com.selenic.test'
184 mtn: committed revision 466e0b2afc7a55aa2b4ab2f57cb240bb6cd66fc7
184 mtn: committed revision 466e0b2afc7a55aa2b4ab2f57cb240bb6cd66fc7
185 $ mtn mv dir5 dir6
185 $ mtn mv dir5 dir6
186 mtn: renaming 'dir5' to 'dir6' in workspace manifest
186 mtn: renaming 'dir5' to 'dir6' in workspace manifest
187 $ mtn mv dir4 dir6/dir4
187 $ mtn mv dir4 dir6/dir4
188 mtn: skipping 'dir6', already accounted for in workspace
188 mtn: skipping 'dir6', already accounted for in workspace
189 mtn: renaming 'dir4' to 'dir6/dir4' in workspace manifest
189 mtn: renaming 'dir4' to 'dir6/dir4' in workspace manifest
190 $ mtn ci -m dirdirmove2
190 $ mtn ci -m dirdirmove2
191 mtn: beginning commit on branch 'com.selenic.test'
191 mtn: beginning commit on branch 'com.selenic.test'
192 mtn: committed revision 3d1f77ebad0c23a5d14911be3b670f990991b749
192 mtn: committed revision 3d1f77ebad0c23a5d14911be3b670f990991b749
193
193
194 test diverging directory moves
194 test diverging directory moves
195
195
196 $ mkdir -p dir7/dir9/dir8
196 $ mkdir -p dir7/dir9/dir8
197 $ echo a > dir7/dir9/dir8/a
197 $ echo a > dir7/dir9/dir8/a
198 $ echo b > dir7/dir9/b
198 $ echo b > dir7/dir9/b
199 $ echo c > dir7/c
199 $ echo c > dir7/c
200 $ mtn add -R dir7
200 $ mtn add -R dir7
201 mtn: adding 'dir7' to workspace manifest
201 mtn: adding 'dir7' to workspace manifest
202 mtn: adding 'dir7/c' to workspace manifest
202 mtn: adding 'dir7/c' to workspace manifest
203 mtn: adding 'dir7/dir9' to workspace manifest
203 mtn: adding 'dir7/dir9' to workspace manifest
204 mtn: adding 'dir7/dir9/b' to workspace manifest
204 mtn: adding 'dir7/dir9/b' to workspace manifest
205 mtn: adding 'dir7/dir9/dir8' to workspace manifest
205 mtn: adding 'dir7/dir9/dir8' to workspace manifest
206 mtn: adding 'dir7/dir9/dir8/a' to workspace manifest
206 mtn: adding 'dir7/dir9/dir8/a' to workspace manifest
207 $ mtn ci -m divergentdirmove
207 $ mtn ci -m divergentdirmove
208 mtn: beginning commit on branch 'com.selenic.test'
208 mtn: beginning commit on branch 'com.selenic.test'
209 mtn: committed revision 08a08511f18b428d840199b062de90d0396bc2ed
209 mtn: committed revision 08a08511f18b428d840199b062de90d0396bc2ed
210 $ mtn mv dir7 dir7-2
210 $ mtn mv dir7 dir7-2
211 mtn: renaming 'dir7' to 'dir7-2' in workspace manifest
211 mtn: renaming 'dir7' to 'dir7-2' in workspace manifest
212 $ mtn mv dir7-2/dir9 dir9-2
212 $ mtn mv dir7-2/dir9 dir9-2
213 mtn: renaming 'dir7-2/dir9' to 'dir9-2' in workspace manifest
213 mtn: renaming 'dir7-2/dir9' to 'dir9-2' in workspace manifest
214 $ mtn mv dir9-2/dir8 dir8-2
214 $ mtn mv dir9-2/dir8 dir8-2
215 mtn: renaming 'dir9-2/dir8' to 'dir8-2' in workspace manifest
215 mtn: renaming 'dir9-2/dir8' to 'dir8-2' in workspace manifest
216 $ mtn ci -m divergentdirmove2
216 $ mtn ci -m divergentdirmove2
217 mtn: beginning commit on branch 'com.selenic.test'
217 mtn: beginning commit on branch 'com.selenic.test'
218 mtn: committed revision 4a736634505795f17786fffdf2c9cbf5b11df6f6
218 mtn: committed revision 4a736634505795f17786fffdf2c9cbf5b11df6f6
219
219
220 test large file support (> 32kB)
220 test large file support (> 32kB)
221
221
222 $ python -c 'for x in range(10000): print x' > large-file
222 >>> fp = file('large-file', 'wb')
223 >>> for x in xrange(10000): fp.write('%d\n' % x)
224 >>> fp.close()
223 $ $TESTDIR/md5sum.py large-file
225 $ $TESTDIR/md5sum.py large-file
224 5d6de8a95c3b6bf9e0ffb808ba5299c1 large-file
226 5d6de8a95c3b6bf9e0ffb808ba5299c1 large-file
225 $ mtn add large-file
227 $ mtn add large-file
226 mtn: adding 'large-file' to workspace manifest
228 mtn: adding 'large-file' to workspace manifest
227 $ mtn ci -m largefile
229 $ mtn ci -m largefile
228 mtn: beginning commit on branch 'com.selenic.test'
230 mtn: beginning commit on branch 'com.selenic.test'
229 mtn: committed revision f0a20fecd10dc4392d18fe69a03f1f4919d3387b
231 mtn: committed revision f0a20fecd10dc4392d18fe69a03f1f4919d3387b
230
232
231 test suspending (closing a branch)
233 test suspending (closing a branch)
232
234
233 $ mtn suspend f0a20fecd10dc4392d18fe69a03f1f4919d3387b 2> /dev/null
235 $ mtn suspend f0a20fecd10dc4392d18fe69a03f1f4919d3387b 2> /dev/null
234 $ cd ..
236 $ cd ..
235
237
236 convert incrementally
238 convert incrementally
237
239
238 $ hg convert -s mtn repo.mtn
240 $ hg convert -s mtn repo.mtn
239 assuming destination repo.mtn-hg
241 assuming destination repo.mtn-hg
240 scanning source...
242 scanning source...
241 sorting...
243 sorting...
242 converting...
244 converting...
243 12 update2 "with" quotes
245 12 update2 "with" quotes
244 11 createdir1
246 11 createdir1
245 10 movedir1
247 10 movedir1
246 9 movedir
248 9 movedir
247 8 emptydir
249 8 emptydir
248 7 dropdirectory
250 7 dropdirectory
249 6 dirfilemove
251 6 dirfilemove
250 5 dirfilemove2
252 5 dirfilemove2
251 4 dirdirmove
253 4 dirdirmove
252 3 dirdirmove2
254 3 dirdirmove2
253 2 divergentdirmove
255 2 divergentdirmove
254 1 divergentdirmove2
256 1 divergentdirmove2
255 0 largefile
257 0 largefile
256 $ glog()
258 $ glog()
257 > {
259 > {
258 > hg glog --template '{rev} "{desc|firstline}" files: {files}\n' "$@"
260 > hg glog --template '{rev} "{desc|firstline}" files: {files}\n' "$@"
259 > }
261 > }
260 $ cd repo.mtn-hg
262 $ cd repo.mtn-hg
261 $ hg up -C
263 $ hg up -C
262 12 files updated, 0 files merged, 0 files removed, 0 files unresolved
264 12 files updated, 0 files merged, 0 files removed, 0 files unresolved
263 $ glog
265 $ glog
264 @ 14 "largefile" files: large-file
266 @ 14 "largefile" files: large-file
265 |
267 |
266 o 13 "divergentdirmove2" files: dir7-2/c dir7/c dir7/dir9/b dir7/dir9/dir8/a dir8-2/a dir9-2/b
268 o 13 "divergentdirmove2" files: dir7-2/c dir7/c dir7/dir9/b dir7/dir9/dir8/a dir8-2/a dir9-2/b
267 |
269 |
268 o 12 "divergentdirmove" files: dir7/c dir7/dir9/b dir7/dir9/dir8/a
270 o 12 "divergentdirmove" files: dir7/c dir7/dir9/b dir7/dir9/dir8/a
269 |
271 |
270 o 11 "dirdirmove2" files: dir4/a dir6/dir4/a
272 o 11 "dirdirmove2" files: dir4/a dir6/dir4/a
271 |
273 |
272 o 10 "dirdirmove" files: dir4/a
274 o 10 "dirdirmove" files: dir4/a
273 |
275 |
274 o 9 "dirfilemove2" files: dir3/a dir3/d2/a
276 o 9 "dirfilemove2" files: dir3/a dir3/d2/a
275 |
277 |
276 o 8 "dirfilemove" files: dir3/a
278 o 8 "dirfilemove" files: dir3/a
277 |
279 |
278 o 7 "dropdirectory" files: dir2/dir/subdir/f
280 o 7 "dropdirectory" files: dir2/dir/subdir/f
279 |
281 |
280 o 6 "emptydir" files: dir2/dir/subdir/f
282 o 6 "emptydir" files: dir2/dir/subdir/f
281 |
283 |
282 o 5 "movedir" files: dir/a dir/d dir2/a dir2/newfile
284 o 5 "movedir" files: dir/a dir/d dir2/a dir2/newfile
283 |
285 |
284 o 4 "movedir1" files: dir1/subdir1/file1 dir1/subdir2/file1
286 o 4 "movedir1" files: dir1/subdir1/file1 dir1/subdir2/file1
285 |
287 |
286 o 3 "createdir1" files: dir1/subdir1/file1 dir1/subdir2_other/file1
288 o 3 "createdir1" files: dir1/subdir1/file1 dir1/subdir2_other/file1
287 |
289 |
288 o 2 "update2 "with" quotes" files: bin bin2 dir/b e
290 o 2 "update2 "with" quotes" files: bin bin2 dir/b e
289 |
291 |
290 o 1 "update1" files: a bin c dir/a dir/b
292 o 1 "update1" files: a bin c dir/a dir/b
291 |
293 |
292 o 0 "initialize" files: a bin c dir/b dir/d
294 o 0 "initialize" files: a bin c dir/b dir/d
293
295
294
296
295 manifest
297 manifest
296
298
297 $ hg manifest
299 $ hg manifest
298 bin2
300 bin2
299 dir1/subdir2/file1
301 dir1/subdir2/file1
300 dir1/subdir2_other/file1
302 dir1/subdir2_other/file1
301 dir2/a
303 dir2/a
302 dir2/newfile
304 dir2/newfile
303 dir3/d2/a
305 dir3/d2/a
304 dir6/dir4/a
306 dir6/dir4/a
305 dir7-2/c
307 dir7-2/c
306 dir8-2/a
308 dir8-2/a
307 dir9-2/b
309 dir9-2/b
308 e
310 e
309 large-file
311 large-file
310
312
311 contents
313 contents
312
314
313 $ cat dir2/a
315 $ cat dir2/a
314 a
316 a
315 a
317 a
316 $ test -d dir2/dir && echo 'removed dir2/dir is still there!'
318 $ test -d dir2/dir && echo 'removed dir2/dir is still there!'
317 [1]
319 [1]
318
320
319 file move
321 file move
320
322
321 $ hg log -v -C -r 1 | grep copies
323 $ hg log -v -C -r 1 | grep copies
322 copies: dir/a (a)
324 copies: dir/a (a)
323
325
324 check directory move
326 check directory move
325
327
326 $ hg manifest -r 4
328 $ hg manifest -r 4
327 bin2
329 bin2
328 dir/a
330 dir/a
329 dir/d
331 dir/d
330 dir1/subdir2/file1
332 dir1/subdir2/file1
331 dir1/subdir2_other/file1
333 dir1/subdir2_other/file1
332 e
334 e
333 $ test -d dir1/subdir2 || echo 'new dir1/subdir2 does not exist!'
335 $ test -d dir1/subdir2 || echo 'new dir1/subdir2 does not exist!'
334 $ test -d dir1/subdir1 && echo 'renamed dir1/subdir1 is still there!'
336 $ test -d dir1/subdir1 && echo 'renamed dir1/subdir1 is still there!'
335 [1]
337 [1]
336 $ hg log -v -C -r 4 | grep copies
338 $ hg log -v -C -r 4 | grep copies
337 copies: dir1/subdir2/file1 (dir1/subdir1/file1)
339 copies: dir1/subdir2/file1 (dir1/subdir1/file1)
338
340
339 check file remove with directory move
341 check file remove with directory move
340
342
341 $ hg manifest -r 5
343 $ hg manifest -r 5
342 bin2
344 bin2
343 dir1/subdir2/file1
345 dir1/subdir2/file1
344 dir1/subdir2_other/file1
346 dir1/subdir2_other/file1
345 dir2/a
347 dir2/a
346 dir2/newfile
348 dir2/newfile
347 e
349 e
348
350
349 check file move with directory move
351 check file move with directory move
350
352
351 $ hg manifest -r 9
353 $ hg manifest -r 9
352 bin2
354 bin2
353 dir1/subdir2/file1
355 dir1/subdir2/file1
354 dir1/subdir2_other/file1
356 dir1/subdir2_other/file1
355 dir2/a
357 dir2/a
356 dir2/newfile
358 dir2/newfile
357 dir3/d2/a
359 dir3/d2/a
358 e
360 e
359
361
360 check file directory directory move
362 check file directory directory move
361
363
362 $ hg manifest -r 11
364 $ hg manifest -r 11
363 bin2
365 bin2
364 dir1/subdir2/file1
366 dir1/subdir2/file1
365 dir1/subdir2_other/file1
367 dir1/subdir2_other/file1
366 dir2/a
368 dir2/a
367 dir2/newfile
369 dir2/newfile
368 dir3/d2/a
370 dir3/d2/a
369 dir6/dir4/a
371 dir6/dir4/a
370 e
372 e
371
373
372 check divergent directory moves
374 check divergent directory moves
373
375
374 $ hg manifest -r 13
376 $ hg manifest -r 13
375 bin2
377 bin2
376 dir1/subdir2/file1
378 dir1/subdir2/file1
377 dir1/subdir2_other/file1
379 dir1/subdir2_other/file1
378 dir2/a
380 dir2/a
379 dir2/newfile
381 dir2/newfile
380 dir3/d2/a
382 dir3/d2/a
381 dir6/dir4/a
383 dir6/dir4/a
382 dir7-2/c
384 dir7-2/c
383 dir8-2/a
385 dir8-2/a
384 dir9-2/b
386 dir9-2/b
385 e
387 e
386
388
387 test large file support (> 32kB)
389 test large file support (> 32kB)
388
390
389 $ $TESTDIR/md5sum.py large-file
391 $ $TESTDIR/md5sum.py large-file
390 5d6de8a95c3b6bf9e0ffb808ba5299c1 large-file
392 5d6de8a95c3b6bf9e0ffb808ba5299c1 large-file
391
393
392 check branch closing
394 check branch closing
393
395
394 $ hg branches -a
396 $ hg branches -a
395 $ hg branches -c
397 $ hg branches -c
396 com.selenic.test 14:* (closed) (glob)
398 com.selenic.test 14:* (closed) (glob)
397
399
General Comments 0
You need to be logged in to leave comments. Login now