annotate tests/test-archive @ 11769:ca6cebd8734e stable

dirstate: ignore symlinks when fs cannot handle them (issue1888) When the filesystem cannot handle the executable bit, we currently ignore it completely when looking for modified files. Similarly, it is impossible to set or clear the bit when the filesystem ignores it. This patch makes Mercurial treat symbolic links the same way. Symlinks are a little different since they manifest themselves as small files containing a filename (the symlink target). On Windows, these files show up as regular files, and on Linux and Mac they show up as real symlinks. Issue1888 presents a case where the symlink files are better ignored from the Windows side. A Linux client creates symlinks in a working copy which is shared over a network between Linux and Windows clients. The Samba server is helpful and defererences the symlink when the Windows client looks at it. This means that Mercurial on the Windows side sees file content instead of a file name in the symlink, and hence flags the link as modified. Ignoring the change would be much more helpful, similarly to how Mercurial does not report any changes when executable bits are ignored in a checkout on Windows. An initial checkout of a symbolic link on a file system that cannot handle symbolic links will still result in a regular file containing the target file name as its content. Sharing such a checkout with a Linux client will not turn the file into a symlink automatically, but 'hg revert' can fix that. After the revert, the Windows client will see the correct file content (provided by the Samba server when it follows the link on the Linux side) and otherwise ignore the change. Running 'hg perfstatus' 10 times gives these results: Before: After: min: 0.544703 min: 0.546549 med: 0.547592 med: 0.548881 avg: 0.549146 avg: 0.548549 max: 0.564112 max: 0.551504 The median time is increased about 0.24%.
author Martin Geisler <mg@aragost.com>
date Mon, 09 Aug 2010 15:31:56 +0200
parents 9ea7238ad935
children 381f131220ad
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1166
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
1 #!/bin/sh
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
2
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
3 mkdir test
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
4 cd test
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
5 hg init
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
6 echo foo>foo
4653
ca023b63ba1f archive: test md5 consistency
Brendan Cully <brendan@kublai.com>
parents: 2571
diff changeset
7 hg commit -Am 1 -d '1 0'
1166
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
8 echo bar>bar
4653
ca023b63ba1f archive: test md5 consistency
Brendan Cully <brendan@kublai.com>
parents: 2571
diff changeset
9 hg commit -Am 2 -d '2 0'
1166
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
10 mkdir baz
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
11 echo bletch>baz/bletch
4653
ca023b63ba1f archive: test md5 consistency
Brendan Cully <brendan@kublai.com>
parents: 2571
diff changeset
12 hg commit -Am 3 -d '1000000000 0'
1260
4603eef60237 hgweb: use ui:username rather than web:contact
mpm@selenic.com
parents: 1166
diff changeset
13 echo "[web]" >> .hg/hgrc
1166
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
14 echo "name = test-archive" >> .hg/hgrc
7029
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
15 cp .hg/hgrc .hg/hgrc-base
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
16
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
17 # check http return codes
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
18 test_archtype() {
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
19 echo "allow_archive = $1" >> .hg/hgrc
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
20 hg serve -p $HGPORT -d --pid-file=hg.pid -E errors.log
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
21 cat hg.pid >> $DAEMON_PIDS
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
22 echo % $1 allowed should give 200
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
23 "$TESTDIR/get-with-headers.py" localhost:$HGPORT "/archive/tip.$2" | head -n 1
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
24 echo % $3 and $4 disallowed should both give 403
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
25 "$TESTDIR/get-with-headers.py" localhost:$HGPORT "/archive/tip.$3" | head -n 1
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
26 "$TESTDIR/get-with-headers.py" localhost:$HGPORT "/archive/tip.$4" | head -n 1
7344
58fd3c718ca4 tests: add killdaemons helper script
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
27 "$TESTDIR/killdaemons.py"
7029
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
28 cat errors.log
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
29 cp .hg/hgrc-base .hg/hgrc
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
30 }
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
31
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
32 echo
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
33 test_archtype gz tar.gz tar.bz2 zip
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
34 test_archtype bz2 tar.bz2 zip tar.gz
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
35 test_archtype zip zip tar.gz tar.bz2
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
36
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
37 echo "allow_archive = gz bz2 zip" >> .hg/hgrc
5924
b8009718a211 better error reporting for hg serve errors in tests
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 5384
diff changeset
38 hg serve -p $HGPORT -d --pid-file=hg.pid -E errors.log
2571
83cfd95eafb5 tests: add timeouts, make run-tests.py clean up dead daemon processes
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2500
diff changeset
39 cat hg.pid >> $DAEMON_PIDS
1166
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
40
7029
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
41 echo % invalid arch type should give 404
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
42 "$TESTDIR/get-with-headers.py" localhost:$HGPORT "/archive/tip.invalid" | head -n 1
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
43 echo
b84d27386285 hgweb: Respond with HTTP 403 for disabled archive types instead of 404
Rocco Rutte <pdmef@gmx.net>
parents: 6496
diff changeset
44
1166
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
45 TIP=`hg id -v | cut -f1 -d' '`
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
46 QTIP=`hg id -q`
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
47 cat > getarchive.py <<EOF
5384
e3a0c092b4e2 Allow tests to run in parallel.
Bryan O'Sullivan <bos@serpentine.com>
parents: 5108
diff changeset
48 import os, sys, urllib2
7080
a6477aa893b8 tests: Windows compatibility fixes
Patrick Mezard <pmezard@gmail.com>
parents: 7029
diff changeset
49 try:
a6477aa893b8 tests: Windows compatibility fixes
Patrick Mezard <pmezard@gmail.com>
parents: 7029
diff changeset
50 # Set stdout to binary mode for win32 platforms
a6477aa893b8 tests: Windows compatibility fixes
Patrick Mezard <pmezard@gmail.com>
parents: 7029
diff changeset
51 import msvcrt
a6477aa893b8 tests: Windows compatibility fixes
Patrick Mezard <pmezard@gmail.com>
parents: 7029
diff changeset
52 msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY)
a6477aa893b8 tests: Windows compatibility fixes
Patrick Mezard <pmezard@gmail.com>
parents: 7029
diff changeset
53 except ImportError:
a6477aa893b8 tests: Windows compatibility fixes
Patrick Mezard <pmezard@gmail.com>
parents: 7029
diff changeset
54 pass
a6477aa893b8 tests: Windows compatibility fixes
Patrick Mezard <pmezard@gmail.com>
parents: 7029
diff changeset
55
1166
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
56 node, archive = sys.argv[1:]
5384
e3a0c092b4e2 Allow tests to run in parallel.
Bryan O'Sullivan <bos@serpentine.com>
parents: 5108
diff changeset
57 f = urllib2.urlopen('http://127.0.0.1:%s/?cmd=archive;node=%s;type=%s'
e3a0c092b4e2 Allow tests to run in parallel.
Bryan O'Sullivan <bos@serpentine.com>
parents: 5108
diff changeset
58 % (os.environ['HGPORT'], node, archive))
1166
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
59 sys.stdout.write(f.read())
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
60 EOF
10154
d4a62b6d4a58 run-tests.py: clears http_proxy for all tests
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 9614
diff changeset
61 python getarchive.py "$TIP" gz | gunzip | tar tf - 2>/dev/null | sed "s/$QTIP/TIP/"
d4a62b6d4a58 run-tests.py: clears http_proxy for all tests
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 9614
diff changeset
62 python getarchive.py "$TIP" bz2 | bunzip2 | tar tf - 2>/dev/null | sed "s/$QTIP/TIP/"
d4a62b6d4a58 run-tests.py: clears http_proxy for all tests
Wagner Bruna <wbruna@softwareexpress.com.br>
parents: 9614
diff changeset
63 python getarchive.py "$TIP" zip > archive.zip
1166
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
64 unzip -t archive.zip | sed "s/$QTIP/TIP/"
bd66294b7a9b Added test case for zip/gz/bz2 archive downloads.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
65
7344
58fd3c718ca4 tests: add killdaemons helper script
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
66 "$TESTDIR/killdaemons.py"
58fd3c718ca4 tests: add killdaemons helper script
Matt Mackall <mpm@selenic.com>
parents: 7080
diff changeset
67
2114
98cc126f9f3f update tests after changing archival code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1929
diff changeset
68 hg archive -t tar test.tar
98cc126f9f3f update tests after changing archival code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1929
diff changeset
69 tar tf test.tar
98cc126f9f3f update tests after changing archival code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1929
diff changeset
70
98cc126f9f3f update tests after changing archival code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1929
diff changeset
71 hg archive -t tbz2 -X baz test.tar.bz2
8145
0c2ba48415c8 test-archive: silence stupid messages from GNU tar
Matt Mackall <mpm@selenic.com>
parents: 7344
diff changeset
72 bunzip2 -dc test.tar.bz2 | tar tf - 2>/dev/null
2114
98cc126f9f3f update tests after changing archival code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1929
diff changeset
73
98cc126f9f3f update tests after changing archival code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1929
diff changeset
74 hg archive -t tgz -p %b-%h test-%h.tar.gz
8145
0c2ba48415c8 test-archive: silence stupid messages from GNU tar
Matt Mackall <mpm@selenic.com>
parents: 7344
diff changeset
75 gzip -dc test-$QTIP.tar.gz | tar tf - 2>/dev/null | sed "s/$QTIP/TIP/"
2114
98cc126f9f3f update tests after changing archival code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1929
diff changeset
76
10650
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
77 hg archive autodetected_test.tar
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
78 tar tf autodetected_test.tar
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
79
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
80 # The '-t' should override autodetection
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
81 hg archive -t tar autodetect_override_test.zip
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
82 tar tf autodetect_override_test.zip
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
83
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
84 for ext in tar tar.gz tgz tar.bz2 tbz2 zip; do
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
85 hg archive auto_test.$ext
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
86 if [ -d auto_test.$ext ]; then
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
87 echo "extension $ext was not autodetected."
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
88 fi
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
89 done
9ea7238ad935 archive: autodetect archive type by extension (issue2058)
David Wolever <david@wolever.net>
parents: 10154
diff changeset
90
4805
beb774707c52 test-archive: stop checking md5 absolute values
Patrick Mezard <pmezard@gmail.com>
parents: 4653
diff changeset
91 cat > md5comp.py <<EOF
8296
908c5906091b util: remove md5
Martin Geisler <mg@lazybytes.net>
parents: 8145
diff changeset
92 try:
908c5906091b util: remove md5
Martin Geisler <mg@lazybytes.net>
parents: 8145
diff changeset
93 from hashlib import md5
908c5906091b util: remove md5
Martin Geisler <mg@lazybytes.net>
parents: 8145
diff changeset
94 except ImportError:
908c5906091b util: remove md5
Martin Geisler <mg@lazybytes.net>
parents: 8145
diff changeset
95 from md5 import md5
6496
118720f857b9 python-2.6: md5 import in test-archive helper
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6183
diff changeset
96 import sys
4805
beb774707c52 test-archive: stop checking md5 absolute values
Patrick Mezard <pmezard@gmail.com>
parents: 4653
diff changeset
97 f1, f2 = sys.argv[1:3]
6496
118720f857b9 python-2.6: md5 import in test-archive helper
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6183
diff changeset
98 h1 = md5(file(f1, 'rb').read()).hexdigest()
118720f857b9 python-2.6: md5 import in test-archive helper
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6183
diff changeset
99 h2 = md5(file(f2, 'rb').read()).hexdigest()
4805
beb774707c52 test-archive: stop checking md5 absolute values
Patrick Mezard <pmezard@gmail.com>
parents: 4653
diff changeset
100 print h1 == h2 or "md5 differ: " + repr((h1, h2))
4653
ca023b63ba1f archive: test md5 consistency
Brendan Cully <brendan@kublai.com>
parents: 2571
diff changeset
101 EOF
ca023b63ba1f archive: test md5 consistency
Brendan Cully <brendan@kublai.com>
parents: 2571
diff changeset
102
4805
beb774707c52 test-archive: stop checking md5 absolute values
Patrick Mezard <pmezard@gmail.com>
parents: 4653
diff changeset
103 # archive name is stored in the archive, so create similar
beb774707c52 test-archive: stop checking md5 absolute values
Patrick Mezard <pmezard@gmail.com>
parents: 4653
diff changeset
104 # archives and rename them afterwards.
4653
ca023b63ba1f archive: test md5 consistency
Brendan Cully <brendan@kublai.com>
parents: 2571
diff changeset
105 hg archive -t tgz tip.tar.gz
4805
beb774707c52 test-archive: stop checking md5 absolute values
Patrick Mezard <pmezard@gmail.com>
parents: 4653
diff changeset
106 mv tip.tar.gz tip1.tar.gz
4653
ca023b63ba1f archive: test md5 consistency
Brendan Cully <brendan@kublai.com>
parents: 2571
diff changeset
107 sleep 1
ca023b63ba1f archive: test md5 consistency
Brendan Cully <brendan@kublai.com>
parents: 2571
diff changeset
108 hg archive -t tgz tip.tar.gz
4805
beb774707c52 test-archive: stop checking md5 absolute values
Patrick Mezard <pmezard@gmail.com>
parents: 4653
diff changeset
109 mv tip.tar.gz tip2.tar.gz
beb774707c52 test-archive: stop checking md5 absolute values
Patrick Mezard <pmezard@gmail.com>
parents: 4653
diff changeset
110 python md5comp.py tip1.tar.gz tip2.tar.gz
4653
ca023b63ba1f archive: test md5 consistency
Brendan Cully <brendan@kublai.com>
parents: 2571
diff changeset
111
2114
98cc126f9f3f update tests after changing archival code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1929
diff changeset
112 hg archive -t zip -p /illegal test.zip
98cc126f9f3f update tests after changing archival code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1929
diff changeset
113 hg archive -t zip -p very/../bad test.zip
98cc126f9f3f update tests after changing archival code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1929
diff changeset
114
6183
0750e4ba9d3d Add config option to disable putting .hg_archival.txt inside archives.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 6020
diff changeset
115 hg archive --config ui.archivemeta=false -t zip -r 2 test.zip
2114
98cc126f9f3f update tests after changing archival code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1929
diff changeset
116 unzip -t test.zip
2476
0f7e4a39d9af archive: make "hg archive -t XXX -" to write to stdout
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2187
diff changeset
117
8145
0c2ba48415c8 test-archive: silence stupid messages from GNU tar
Matt Mackall <mpm@selenic.com>
parents: 7344
diff changeset
118 hg archive -t tar - | tar tf - 2>/dev/null | sed "s/$QTIP/TIP/"
4863
6dc0094c0827 archive: abort on empty repository. Fixes #624.
Brendan Cully <brendan@kublai.com>
parents: 4805
diff changeset
119
4836
0e2d0a78f81a archive: make the %r escape work.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4805
diff changeset
120 hg archive -r 0 -t tar rev-%r.tar
0e2d0a78f81a archive: make the %r escape work.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4805
diff changeset
121 if [ -f rev-0.tar ]; then
0e2d0a78f81a archive: make the %r escape work.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4805
diff changeset
122 echo 'rev-0.tar created'
0e2d0a78f81a archive: make the %r escape work.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4805
diff changeset
123 fi
5061
a49f2a4d5ff7 archive: abort on empty repository. Fixes #624.
Brendan Cully <brendan@kublai.com>
parents: 4836
diff changeset
124
9614
58edd448da4f archive: add branch and tag informations to the .hg_archival.txt file
Gilles Moris <gilles.moris@free.fr>
parents: 8296
diff changeset
125 echo '% test .hg_archival.txt'
58edd448da4f archive: add branch and tag informations to the .hg_archival.txt file
Gilles Moris <gilles.moris@free.fr>
parents: 8296
diff changeset
126 hg archive ../test-tags
58edd448da4f archive: add branch and tag informations to the .hg_archival.txt file
Gilles Moris <gilles.moris@free.fr>
parents: 8296
diff changeset
127 cat ../test-tags/.hg_archival.txt
58edd448da4f archive: add branch and tag informations to the .hg_archival.txt file
Gilles Moris <gilles.moris@free.fr>
parents: 8296
diff changeset
128 hg tag -r 2 mytag
58edd448da4f archive: add branch and tag informations to the .hg_archival.txt file
Gilles Moris <gilles.moris@free.fr>
parents: 8296
diff changeset
129 hg tag -r 2 anothertag
58edd448da4f archive: add branch and tag informations to the .hg_archival.txt file
Gilles Moris <gilles.moris@free.fr>
parents: 8296
diff changeset
130 hg archive -r 2 ../test-lasttag
58edd448da4f archive: add branch and tag informations to the .hg_archival.txt file
Gilles Moris <gilles.moris@free.fr>
parents: 8296
diff changeset
131 cat ../test-lasttag/.hg_archival.txt
58edd448da4f archive: add branch and tag informations to the .hg_archival.txt file
Gilles Moris <gilles.moris@free.fr>
parents: 8296
diff changeset
132
6019
b70a530bdb93 cleanly abort on unknown archive type (issue966)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 5384
diff changeset
133 hg archive -t bogus test.bogus
b70a530bdb93 cleanly abort on unknown archive type (issue966)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 5384
diff changeset
134
5924
b8009718a211 better error reporting for hg serve errors in tests
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 5384
diff changeset
135 echo % server errors
b8009718a211 better error reporting for hg serve errors in tests
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 5384
diff changeset
136 cat errors.log
b8009718a211 better error reporting for hg serve errors in tests
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 5384
diff changeset
137
5061
a49f2a4d5ff7 archive: abort on empty repository. Fixes #624.
Brendan Cully <brendan@kublai.com>
parents: 4836
diff changeset
138 echo '% empty repo'
a49f2a4d5ff7 archive: abort on empty repository. Fixes #624.
Brendan Cully <brendan@kublai.com>
parents: 4836
diff changeset
139 hg init ../empty
a49f2a4d5ff7 archive: abort on empty repository. Fixes #624.
Brendan Cully <brendan@kublai.com>
parents: 4836
diff changeset
140 cd ../empty
a49f2a4d5ff7 archive: abort on empty repository. Fixes #624.
Brendan Cully <brendan@kublai.com>
parents: 4836
diff changeset
141 hg archive ../test-empty
5924
b8009718a211 better error reporting for hg serve errors in tests
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 5384
diff changeset
142
5061
a49f2a4d5ff7 archive: abort on empty repository. Fixes #624.
Brendan Cully <brendan@kublai.com>
parents: 4836
diff changeset
143 exit 0