author | Thomas Arendsen Hein <thomas@intevation.de> |
Mon, 14 Jan 2008 09:00:23 +0100 | |
changeset 5855 | a6ccb957fd07 |
parent 5839 | 59fba5caa94b |
child 5856 | 85888efbdfff |
permissions | -rwxr-xr-x |
5816 | 1 |
#!/bin/sh |
2 |
||
3 |
cat <<EOF >> $HGRCPATH |
|
4 |
[extensions] |
|
5 |
hgext.keyword = |
|
6 |
[keyword] |
|
7 |
* = |
|
8 |
b = ignore |
|
9 |
[hooks] |
|
10 |
commit= |
|
11 |
commit.test=cp a hooktest |
|
12 |
EOF |
|
13 |
||
14 |
echo % help |
|
15 |
hg help keyword |
|
16 |
||
17 |
echo % hg kwdemo |
|
18 |
hg --quiet kwdemo --default \ |
|
19 |
| sed -e 's![^ ][^ ]*demo.txt,v!/TMP/demo.txt,v!' \ |
|
20 |
-e 's/,v [a-z0-9][a-z0-9]* /,v xxxxxxxxxxxx /' \ |
|
21 |
-e '/[$]Revision/ s/: [a-z0-9][a-z0-9]* /: xxxxxxxxxxxx /' \ |
|
22 |
-e 's! 20[0-9][0-9]/[01][0-9]/[0-3][0-9] [0-2][0-9]:[0-6][0-9]:[0-6][0-9]! 2000/00/00 00:00:00!' |
|
23 |
||
24 |
hg --quiet kwdemo "Branch = {branches}" |
|
25 |
||
26 |
hg init Test |
|
27 |
cd Test |
|
28 |
||
29 |
echo % kwshrink should exit silently in empty/invalid repo |
|
30 |
hg kwshrink |
|
31 |
||
32 |
echo 'expand $Id$' > a |
|
33 |
echo 'do not process $Id:' >> a |
|
34 |
echo 'xxx $' >> a |
|
35 |
echo 'ignore $Id$' > b |
|
36 |
ln -s a sym |
|
37 |
echo % cat |
|
38 |
cat sym a b |
|
39 |
||
40 |
echo % addremove |
|
41 |
hg addremove |
|
42 |
echo % status |
|
43 |
hg status |
|
44 |
||
45 |
echo % default keyword expansion including commit hook |
|
46 |
echo % interrupted commit should not change state or run commit hook |
|
5855
a6ccb957fd07
Solaris compatibility fixes for test-keyword:
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5839
diff
changeset
|
47 |
hg --debug commit |
5816 | 48 |
echo % status |
49 |
hg status |
|
50 |
||
51 |
echo % commit |
|
52 |
hg --debug commit -mabsym -d '0 0' -u 'User Name <user@example.com>' |
|
53 |
echo % status |
|
54 |
hg status |
|
55 |
echo % identify |
|
56 |
hg --quiet identify |
|
57 |
echo % cat |
|
58 |
cat sym a b |
|
59 |
echo % hg cat |
|
60 |
hg cat sym a b |
|
61 |
||
62 |
echo |
|
63 |
echo % diff a hooktest |
|
64 |
diff a hooktest |
|
65 |
||
66 |
echo % removing commit hook from config |
|
67 |
sed -e '/\[hooks\]/,$ d' $HGRCPATH > $HGRCPATH.nohook |
|
68 |
mv $HGRCPATH.nohook $HGRCPATH |
|
69 |
rm hooktest |
|
70 |
||
71 |
echo % touch |
|
72 |
touch a b |
|
73 |
echo % status |
|
74 |
hg status |
|
75 |
||
76 |
rm sym a b |
|
77 |
echo % update |
|
78 |
hg update |
|
79 |
echo % cat |
|
80 |
cat sym a b |
|
81 |
||
82 |
echo % copy |
|
83 |
hg cp a c |
|
84 |
||
85 |
echo % kwfiles added |
|
86 |
hg kwfiles |
|
87 |
||
88 |
echo % commit |
|
89 |
hg --debug commit -ma2c -d '1 0' -u 'User Name <user@example.com>' |
|
90 |
echo % cat a c |
|
91 |
cat a c |
|
92 |
echo % touch copied c after 1 second |
|
93 |
sleep 1 |
|
94 |
touch c |
|
95 |
echo % status |
|
96 |
hg status |
|
97 |
||
98 |
echo % kwfiles |
|
99 |
hg kwfiles |
|
100 |
||
101 |
echo % diff --rev |
|
102 |
hg diff --rev 0 | grep -v 'b/c' |
|
103 |
||
104 |
echo % rollback |
|
105 |
hg rollback |
|
106 |
echo % status |
|
107 |
hg status |
|
108 |
echo % update -C |
|
109 |
hg update --clean |
|
110 |
||
111 |
echo % custom keyword expansion |
|
112 |
echo % try with kwdemo |
|
113 |
hg --quiet kwdemo "Xinfo = {author}: {desc}" |
|
114 |
||
115 |
cat <<EOF >>$HGRCPATH |
|
116 |
[keywordmaps] |
|
117 |
Id = {file} {node|short} {date|rfc822date} {author|user} |
|
118 |
Xinfo = {author}: {desc} |
|
119 |
EOF |
|
120 |
||
121 |
echo % cat |
|
122 |
cat sym a b |
|
123 |
echo % hg cat |
|
124 |
hg cat sym a b |
|
125 |
||
126 |
echo |
|
127 |
echo '$Xinfo$' >> a |
|
128 |
cat <<EOF >> log |
|
129 |
firstline |
|
130 |
secondline |
|
131 |
EOF |
|
132 |
||
133 |
echo % interrupted commit should not change state |
|
5855
a6ccb957fd07
Solaris compatibility fixes for test-keyword:
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5839
diff
changeset
|
134 |
hg commit |
5816 | 135 |
echo % status |
136 |
hg status |
|
137 |
||
138 |
echo % commit |
|
139 |
hg --debug commit -l log -d '2 0' -u 'User Name <user@example.com>' |
|
140 |
rm log |
|
141 |
echo % status |
|
142 |
hg status |
|
143 |
||
144 |
echo % cat |
|
145 |
cat sym a b |
|
146 |
echo % hg cat |
|
147 |
hg cat sym a b |
|
148 |
echo |
|
149 |
||
150 |
echo % remove |
|
151 |
hg remove a |
|
152 |
hg --debug commit -m rma |
|
153 |
echo % status |
|
154 |
hg status |
|
155 |
echo % rollback |
|
156 |
hg rollback |
|
157 |
echo % status |
|
158 |
hg status |
|
159 |
echo % revert a |
|
160 |
hg revert --no-backup --rev tip a |
|
161 |
echo % cat a |
|
162 |
cat a |
|
163 |
||
164 |
echo % clone to test incoming |
|
165 |
cd .. |
|
166 |
hg clone -r0 Test Test-a |
|
167 |
cd Test-a |
|
168 |
cat <<EOF >> .hg/hgrc |
|
169 |
[paths] |
|
170 |
default = ../Test |
|
171 |
EOF |
|
172 |
echo % incoming |
|
173 |
# remove path to temp dir |
|
174 |
hg incoming | sed -e 's/^\(comparing with \).*\(test-keyword.*\)/\1\2/' |
|
175 |
||
5839
59fba5caa94b
Don't use the -i option with sed
Will Maier <willmaier@ml1.net>
parents:
5816
diff
changeset
|
176 |
sed -e 's/Id.*/& rejecttest/' a > a.new |
59fba5caa94b
Don't use the -i option with sed
Will Maier <willmaier@ml1.net>
parents:
5816
diff
changeset
|
177 |
mv a.new a |
5816 | 178 |
echo % commit rejecttest |
179 |
hg --debug commit -m'rejects?' -d '3 0' -u 'User Name <user@example.com>' |
|
180 |
echo % export |
|
181 |
hg export -o ../rejecttest.diff tip |
|
182 |
||
183 |
cd ../Test |
|
184 |
echo % import |
|
185 |
hg import ../rejecttest.diff |
|
186 |
echo % cat |
|
187 |
cat sym a b |
|
188 |
echo |
|
189 |
echo % rollback |
|
190 |
hg rollback |
|
191 |
echo % clean update |
|
192 |
hg update --clean |
|
193 |
||
194 |
echo % kwexpand/kwshrink on selected files |
|
195 |
mkdir x |
|
196 |
echo % copy a x/a |
|
197 |
hg copy a x/a |
|
198 |
echo % kwexpand a |
|
199 |
hg --verbose kwexpand a |
|
200 |
echo % kwexpand x/a should abort |
|
201 |
hg --verbose kwexpand x/a |
|
202 |
cd x |
|
203 |
hg --debug commit -m xa -d '3 0' -u 'User Name <user@example.com>' |
|
204 |
echo % cat a |
|
205 |
cat a |
|
206 |
echo % kwshrink a inside directory x |
|
207 |
hg --verbose kwshrink a |
|
208 |
echo % cat a |
|
209 |
cat a |
|
5855
a6ccb957fd07
Solaris compatibility fixes for test-keyword:
Thomas Arendsen Hein <thomas@intevation.de>
parents:
5839
diff
changeset
|
210 |
cd .. |
5816 | 211 |
|
212 |
echo % kwexpand nonexistent |
|
213 |
hg kwexpand nonexistent |
|
214 |
||
215 |
echo % switch off expansion |
|
216 |
echo % kwshrink with unknown file u |
|
217 |
cp a u |
|
218 |
hg --verbose kwshrink |
|
219 |
echo % cat |
|
220 |
cat sym a b |
|
221 |
echo % hg cat |
|
222 |
hg cat sym a b |
|
223 |
echo |
|
224 |
rm $HGRCPATH |
|
225 |
echo % cat |
|
226 |
cat sym a b |
|
227 |
echo % hg cat |
|
228 |
hg cat sym a b |
|
229 |
echo |