annotate tests/test-mq @ 4890:bbdcacf7cef8

mq: autodetect an existing git patch during qrefresh (issue 491)
author Bryan O'Sullivan <bos@serpentine.com>
date Mon, 16 Jul 2007 16:50:47 -0700
parents cba10652a901
children 8535c1770dd3 48ebd6a83994
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2729
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
1 #!/bin/sh
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
2
2990
61fcd9fac434 Make tests append settings to $HGRCPATH instead of $HGTMP/.hgrc
Thomas Arendsen Hein <thomas@intevation.de>
parents: 2935
diff changeset
3 echo "[extensions]" >> $HGRCPATH
61fcd9fac434 Make tests append settings to $HGRCPATH instead of $HGTMP/.hgrc
Thomas Arendsen Hein <thomas@intevation.de>
parents: 2935
diff changeset
4 echo "mq=" >> $HGRCPATH
2729
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
5
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
6 echo % help
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
7 hg help mq
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
8
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
9 hg init a
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
10 cd a
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
11 echo a > a
2848
307439d6fede mq: do not allow to push from repo with patches applied
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2846
diff changeset
12 hg ci -Ama
307439d6fede mq: do not allow to push from repo with patches applied
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2846
diff changeset
13
307439d6fede mq: do not allow to push from repo with patches applied
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2846
diff changeset
14 hg clone . ../k
307439d6fede mq: do not allow to push from repo with patches applied
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2846
diff changeset
15
2729
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
16 mkdir b
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
17 echo z > b/z
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
18 hg ci -Ama
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
19
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
20 echo % qinit
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
21
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
22 hg qinit
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
23
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
24 cd ..
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
25 hg init b
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
26
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
27 echo % -R qinit
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
28
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
29 hg -R b qinit
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
30
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
31 hg init c
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
32
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
33 echo % qinit -c
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
34
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
35 hg --cwd c qinit -c
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
36 hg -R c/.hg/patches st
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
37
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
38 echo % qnew implies add
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
39
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
40 hg -R c qnew test.patch
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
41 hg -R c/.hg/patches st
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
42
4071
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
43 echo '% qinit; qinit -c'
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
44 hg init d
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
45 cd d
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
46 hg qinit
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
47 hg qinit -c
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
48 # qinit -c should create both files if they don't exist
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
49 echo ' .hgignore:'
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
50 cat .hg/patches/.hgignore
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
51 echo ' series:'
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
52 cat .hg/patches/series
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
53 hg qinit -c 2>&1 | sed -e 's/repository.*already/repository already/'
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
54 cd ..
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
55
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
56 echo '% qinit; <stuff>; qinit -c'
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
57 hg init e
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
58 cd e
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
59 hg qnew A
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
60 echo foo > foo
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
61 hg add foo
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
62 hg qrefresh
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
63 hg qnew B
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
64 echo >> foo
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
65 hg qrefresh
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
66 echo status >> .hg/patches/.hgignore
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
67 echo bleh >> .hg/patches/.hgignore
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
68 hg qinit -c
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
69 hg -R .hg/patches status
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
70 # qinit -c shouldn't touch these files if they already exist
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
71 echo ' .hgignore:'
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
72 cat .hg/patches/.hgignore
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
73 echo ' series:'
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
74 cat .hg/patches/series
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
75 cd ..
165abe554c80 mq: qinit -c creates a repo even after a regular qinit
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
76
2729
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
77 cd a
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
78
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
79 echo % qnew -m
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
80
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
81 hg qnew -m 'foo bar' test.patch
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
82 cat .hg/patches/test.patch
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
83
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
84 echo % qrefresh
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
85
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
86 echo a >> a
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
87 hg qrefresh
2843
0b9ac7dfcf56 Fix some tests for portability.
Danek Duvall <danek.duvall@sun.com>
parents: 2729
diff changeset
88 sed -e "s/^\(diff -r \)\([a-f0-9]* \)/\1 x/" \
2729
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
89 -e "s/\(+++ [a-zA-Z0-9_/.-]*\).*/\1/" \
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
90 -e "s/\(--- [a-zA-Z0-9_/.-]*\).*/\1/" .hg/patches/test.patch
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
91
4173
7307d2e98b32 fix qrefresh'ing an empty patch
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4090
diff changeset
92 echo % empty qrefresh
7307d2e98b32 fix qrefresh'ing an empty patch
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4090
diff changeset
93
7307d2e98b32 fix qrefresh'ing an empty patch
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4090
diff changeset
94 hg qrefresh -X a
7307d2e98b32 fix qrefresh'ing an empty patch
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4090
diff changeset
95 echo 'revision:'
7307d2e98b32 fix qrefresh'ing an empty patch
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4090
diff changeset
96 hg diff -r -2 -r -1
7307d2e98b32 fix qrefresh'ing an empty patch
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4090
diff changeset
97 echo 'patch:'
7307d2e98b32 fix qrefresh'ing an empty patch
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4090
diff changeset
98 cat .hg/patches/test.patch
7307d2e98b32 fix qrefresh'ing an empty patch
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4090
diff changeset
99 echo 'working dir diff:'
7307d2e98b32 fix qrefresh'ing an empty patch
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4090
diff changeset
100 hg diff --nodates -q
7307d2e98b32 fix qrefresh'ing an empty patch
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4090
diff changeset
101 # restore things
7307d2e98b32 fix qrefresh'ing an empty patch
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4090
diff changeset
102 hg qrefresh
7307d2e98b32 fix qrefresh'ing an empty patch
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4090
diff changeset
103
2729
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
104 echo % qpop
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
105
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
106 hg qpop
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
107
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
108 echo % qpush
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
109
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
110 hg qpush
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
111
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
112 cd ..
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
113
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
114 echo % pop/push outside repo
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
115
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
116 hg -R a qpop
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
117 hg -R a qpush
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
118
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
119 cd a
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
120 hg qnew test2.patch
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
121
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
122 echo % qrefresh in subdir
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
123
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
124 cd b
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
125 echo a > a
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
126 hg add a
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
127 hg qrefresh
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
128
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
129 echo % pop/push -a in subdir
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
130
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
131 hg qpop -a
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
132 hg --traceback qpush -a
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
133
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
134 echo % qseries
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
135 hg qseries
3681
05d877dfd33d fix qseries -v when there are unapplied patches
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3464
diff changeset
136 hg qpop
05d877dfd33d fix qseries -v when there are unapplied patches
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3464
diff changeset
137 hg qseries -vs
05d877dfd33d fix qseries -v when there are unapplied patches
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3464
diff changeset
138 hg qpush
2729
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
139
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
140 echo % qapplied
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
141 hg qapplied
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
142
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
143 echo % qtop
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
144 hg qtop
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
145
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
146 echo % qprev
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
147 hg qprev
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
148
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
149 echo % qnext
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
150 hg qnext
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
151
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
152 echo % pop, qnext, qprev, qapplied
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
153 hg qpop
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
154 hg qnext
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
155 hg qprev
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
156 hg qapplied
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
157
2846
b8d587cfa3bb mq: test commit in repo with patches applied
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2843
diff changeset
158 echo % commit should fail
b8d587cfa3bb mq: test commit in repo with patches applied
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2843
diff changeset
159 hg commit
b8d587cfa3bb mq: test commit in repo with patches applied
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2843
diff changeset
160
2848
307439d6fede mq: do not allow to push from repo with patches applied
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2846
diff changeset
161 echo % push should fail
307439d6fede mq: do not allow to push from repo with patches applied
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2846
diff changeset
162 hg push ../../k
307439d6fede mq: do not allow to push from repo with patches applied
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2846
diff changeset
163
2729
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
164 echo % qunapplied
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
165 hg qunapplied
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
166
3081
760414dc7ac6 Added tests for qpush/qpop with index.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 3027
diff changeset
167 echo % qpush/qpop with index
760414dc7ac6 Added tests for qpush/qpop with index.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 3027
diff changeset
168 hg qnew test1b.patch
760414dc7ac6 Added tests for qpush/qpop with index.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 3027
diff changeset
169 echo 1b > 1b
760414dc7ac6 Added tests for qpush/qpop with index.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 3027
diff changeset
170 hg add 1b
760414dc7ac6 Added tests for qpush/qpop with index.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 3027
diff changeset
171 hg qrefresh
760414dc7ac6 Added tests for qpush/qpop with index.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 3027
diff changeset
172 hg qpush 2
760414dc7ac6 Added tests for qpush/qpop with index.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 3027
diff changeset
173 hg qpop 0
760414dc7ac6 Added tests for qpush/qpop with index.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 3027
diff changeset
174 hg qpush test.patch+1
760414dc7ac6 Added tests for qpush/qpop with index.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 3027
diff changeset
175 hg qpush test.patch+2
760414dc7ac6 Added tests for qpush/qpop with index.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 3027
diff changeset
176 hg qpop test2.patch-1
760414dc7ac6 Added tests for qpush/qpop with index.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 3027
diff changeset
177 hg qpop test2.patch-2
760414dc7ac6 Added tests for qpush/qpop with index.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 3027
diff changeset
178 hg qpush test1b.patch+1
760414dc7ac6 Added tests for qpush/qpop with index.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 3027
diff changeset
179
2848
307439d6fede mq: do not allow to push from repo with patches applied
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2846
diff changeset
180 echo % push should succeed
307439d6fede mq: do not allow to push from repo with patches applied
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2846
diff changeset
181 hg qpop -a
307439d6fede mq: do not allow to push from repo with patches applied
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2846
diff changeset
182 hg push ../../k
307439d6fede mq: do not allow to push from repo with patches applied
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2846
diff changeset
183
4101
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
184 echo % qpush/qpop error codes
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
185 errorcode()
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
186 {
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
187 hg "$@" && echo " $@ succeeds" || echo " $@ fails"
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
188 }
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
189
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
190 # we want to start with some patches applied
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
191 hg qpush -a
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
192 echo " % pops all patches and succeeds"
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
193 errorcode qpop -a
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
194 echo " % does nothing and succeeds"
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
195 errorcode qpop -a
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
196 echo " % fails - nothing else to pop"
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
197 errorcode qpop
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
198 echo " % pushes a patch and succeeds"
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
199 errorcode qpush
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
200 echo " % pops a patch and succeeds"
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
201 errorcode qpop
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
202 echo " % pushes up to test1b.patch and succeeds"
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
203 errorcode qpush test1b.patch
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
204 echo " % does nothing and succeeds"
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
205 errorcode qpush test1b.patch
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
206 echo " % does nothing and succeeds"
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
207 errorcode qpop test1b.patch
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
208 echo " % fails - can't push to this patch"
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
209 errorcode qpush test.patch
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
210 echo " % fails - can't pop to this patch"
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
211 errorcode qpop test2.patch
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
212 echo " % pops up to test.patch and succeeds"
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
213 errorcode qpop test.patch
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
214 echo " % pushes all patches and succeeds"
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
215 errorcode qpush -a
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
216 echo " % does nothing and succeeds"
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
217 errorcode qpush -a
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
218 echo " % fails - nothing else to push"
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
219 errorcode qpush
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
220 echo " % does nothing and succeeds"
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
221 errorcode qpush test2.patch
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
222
e2ed92f4c0f7 add some tests for qpush/qpop error codes
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4096
diff changeset
223
2729
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
224 echo % strip
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
225 cd ../../b
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
226 echo x>x
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
227 hg ci -Ama
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
228 hg strip tip 2>&1 | sed 's/\(saving bundle to \).*/\1/'
8ce86d2c9737 mq: add basic tests
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
229 hg unbundle .hg/strip-backup/*
2934
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
230
3027
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
231 echo '% cd b; hg qrefresh'
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
232 hg init refresh
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
233 cd refresh
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
234 echo a > a
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
235 hg ci -Ama -d'0 0'
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
236 hg qnew -mfoo foo
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
237 echo a >> a
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
238 hg qrefresh
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
239 mkdir b
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
240 cd b
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
241 echo f > f
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
242 hg add f
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
243 hg qrefresh
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
244 sed -e "s/\(+++ [a-zA-Z0-9_/.-]*\).*/\1/" \
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
245 -e "s/\(--- [a-zA-Z0-9_/.-]*\).*/\1/" ../.hg/patches/foo
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
246 echo % hg qrefresh .
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
247 hg qrefresh .
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
248 sed -e "s/\(+++ [a-zA-Z0-9_/.-]*\).*/\1/" \
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
249 -e "s/\(--- [a-zA-Z0-9_/.-]*\).*/\1/" ../.hg/patches/foo
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
250 hg status
a4374f7331e4 Call patch.diff directly instead of printdiff - this also saves an
Brendan Cully <brendan@kublai.com>
parents: 2990
diff changeset
251
3334
534806df5b5a Test case for bdiff on buffer objects
Brendan Cully <brendan@kublai.com>
parents: 3081
diff changeset
252 echo % qpush failure
534806df5b5a Test case for bdiff on buffer objects
Brendan Cully <brendan@kublai.com>
parents: 3081
diff changeset
253 cd ..
534806df5b5a Test case for bdiff on buffer objects
Brendan Cully <brendan@kublai.com>
parents: 3081
diff changeset
254 hg qrefresh
534806df5b5a Test case for bdiff on buffer objects
Brendan Cully <brendan@kublai.com>
parents: 3081
diff changeset
255 hg qnew -mbar bar
534806df5b5a Test case for bdiff on buffer objects
Brendan Cully <brendan@kublai.com>
parents: 3081
diff changeset
256 echo foo > foo
3464
ba3a96750de0 mq: test case for issue399
Brendan Cully <brendan@kublai.com>
parents: 3334
diff changeset
257 echo bar > bar
ba3a96750de0 mq: test case for issue399
Brendan Cully <brendan@kublai.com>
parents: 3334
diff changeset
258 hg add foo bar
3334
534806df5b5a Test case for bdiff on buffer objects
Brendan Cully <brendan@kublai.com>
parents: 3081
diff changeset
259 hg qrefresh
534806df5b5a Test case for bdiff on buffer objects
Brendan Cully <brendan@kublai.com>
parents: 3081
diff changeset
260 hg qpop -a
534806df5b5a Test case for bdiff on buffer objects
Brendan Cully <brendan@kublai.com>
parents: 3081
diff changeset
261 echo bar > foo
534806df5b5a Test case for bdiff on buffer objects
Brendan Cully <brendan@kublai.com>
parents: 3081
diff changeset
262 hg qpush -a
3464
ba3a96750de0 mq: test case for issue399
Brendan Cully <brendan@kublai.com>
parents: 3334
diff changeset
263 hg st
3334
534806df5b5a Test case for bdiff on buffer objects
Brendan Cully <brendan@kublai.com>
parents: 3081
diff changeset
264
4219
6cb5be6bd70f mq: add qparent tag (first parent of qbase)
Brendan Cully <brendan@kublai.com>
parents: 4182
diff changeset
265 echo % mq tags
6cb5be6bd70f mq: add qparent tag (first parent of qbase)
Brendan Cully <brendan@kublai.com>
parents: 4182
diff changeset
266 hg log --template '{rev} {tags}\n' -r qparent:qtip
6cb5be6bd70f mq: add qparent tag (first parent of qbase)
Brendan Cully <brendan@kublai.com>
parents: 4182
diff changeset
267
2990
61fcd9fac434 Make tests append settings to $HGRCPATH instead of $HGTMP/.hgrc
Thomas Arendsen Hein <thomas@intevation.de>
parents: 2935
diff changeset
268 cat >>$HGRCPATH <<EOF
2934
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
269 [diff]
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
270 git = True
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
271 EOF
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
272 cd ..
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
273 hg init git
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
274 cd git
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
275 hg qinit
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
276
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
277 hg qnew -m'new file' new
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
278 echo foo > new
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
279 chmod +x new
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
280 hg add new
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
281 hg qrefresh
2935
1c66aad252f9 sed portability fixes
Brendan Cully <brendan@kublai.com>
parents: 2934
diff changeset
282 sed -e "s/\(+++ [a-zA-Z0-9_/.-]*\).*/\1/" \
1c66aad252f9 sed portability fixes
Brendan Cully <brendan@kublai.com>
parents: 2934
diff changeset
283 -e "s/\(--- [a-zA-Z0-9_/.-]*\).*/\1/" .hg/patches/new
2934
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
284
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
285 hg qnew -m'copy file' copy
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
286 hg cp new copy
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
287 hg qrefresh
2935
1c66aad252f9 sed portability fixes
Brendan Cully <brendan@kublai.com>
parents: 2934
diff changeset
288 sed -e "s/\(+++ [a-zA-Z0-9_/.-]*\).*/\1/" \
1c66aad252f9 sed portability fixes
Brendan Cully <brendan@kublai.com>
parents: 2934
diff changeset
289 -e "s/\(--- [a-zA-Z0-9_/.-]*\).*/\1/" .hg/patches/copy
2934
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
290
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
291 hg qpop
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
292 hg qpush
2f190e998eb3 Teach mq about git patches
Brendan Cully <brendan@kublai.com>
parents: 2848
diff changeset
293 hg qdiff
3697
da262f35fbc8 add --git option to qdiff
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3681
diff changeset
294 cat >>$HGRCPATH <<EOF
da262f35fbc8 add --git option to qdiff
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3681
diff changeset
295 [diff]
da262f35fbc8 add --git option to qdiff
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3681
diff changeset
296 git = False
da262f35fbc8 add --git option to qdiff
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3681
diff changeset
297 EOF
da262f35fbc8 add --git option to qdiff
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3681
diff changeset
298 hg qdiff --git
3699
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
299
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
300 cd ..
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
301 hg init slow
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
302 cd slow
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
303 hg qinit
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
304 echo foo > foo
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
305 hg add foo
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
306 hg ci -m 'add foo'
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
307 hg qnew bar
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
308 echo bar > bar
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
309 hg add bar
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
310 hg mv foo baz
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
311 hg qrefresh --git
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
312 hg up -C 0
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
313 echo >> foo
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
314 hg ci -m 'change foo'
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
315 hg up -C 1
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
316 hg qrefresh --git 2>&1 | grep -v 'saving bundle'
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
317 cat .hg/patches/bar
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
318 hg log -vC --template '{rev} {file_copies%filecopy}\n' -r .
3700
4c158de5f245 qrefresh: fix handling of copies in the fast path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3699
diff changeset
319 hg qrefresh --git
4c158de5f245 qrefresh: fix handling of copies in the fast path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3699
diff changeset
320 cat .hg/patches/bar
4c158de5f245 qrefresh: fix handling of copies in the fast path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3699
diff changeset
321 hg log -vC --template '{rev} {file_copies%filecopy}\n' -r .
4890
bbdcacf7cef8 mq: autodetect an existing git patch during qrefresh (issue 491)
Bryan O'Sullivan <bos@serpentine.com>
parents: 4862
diff changeset
322 hg qrefresh
bbdcacf7cef8 mq: autodetect an existing git patch during qrefresh (issue 491)
Bryan O'Sullivan <bos@serpentine.com>
parents: 4862
diff changeset
323 grep 'diff --git' .hg/patches/bar
3699
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
324
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
325 echo
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
326 hg up -C 1
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
327 echo >> foo
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
328 hg ci -m 'change foo again'
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
329 hg up -C 2
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
330 hg mv bar quux
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
331 hg mv baz bleh
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
332 hg qrefresh --git 2>&1 | grep -v 'saving bundle'
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
333 cat .hg/patches/bar
4bafcf7aeb32 qrefresh: fix handling of added files (including copies) in the slow path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3697
diff changeset
334 hg log -vC --template '{rev} {file_copies%filecopy}\n' -r .
3700
4c158de5f245 qrefresh: fix handling of copies in the fast path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3699
diff changeset
335 hg mv quux fred
4c158de5f245 qrefresh: fix handling of copies in the fast path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3699
diff changeset
336 hg mv bleh barney
4c158de5f245 qrefresh: fix handling of copies in the fast path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3699
diff changeset
337 hg qrefresh --git
4c158de5f245 qrefresh: fix handling of copies in the fast path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3699
diff changeset
338 cat .hg/patches/bar
4c158de5f245 qrefresh: fix handling of copies in the fast path
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3699
diff changeset
339 hg log -vC --template '{rev} {file_copies%filecopy}\n' -r .
4065
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
340
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
341 echo '% strip again'
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
342 cd ..
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
343 hg init strip
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
344 cd strip
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
345 touch foo
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
346 hg add foo
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
347 hg ci -m 'add foo' -d '0 0'
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
348 echo >> foo
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
349 hg ci -m 'change foo 1' -d '0 0'
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
350 hg up -C 0
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
351 echo 1 >> foo
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
352 hg ci -m 'change foo 2' -d '0 0'
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
353 HGMERGE=true hg merge
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
354 hg ci -m merge -d '0 0'
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
355 hg log
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
356 hg strip 1 2>&1 | sed 's/\(saving bundle to \).*/\1/'
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
357 hg log
4090
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
358 cd ..
4065
8ee983e3d461 fix strip'ping the second parent of a merge
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3700
diff changeset
359
4090
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
360 echo '% qclone'
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
361 qlog()
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
362 {
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
363 echo 'main repo:'
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
364 hg log --template ' rev {rev}: {desc}\n'
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
365 echo 'patch repo:'
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
366 hg -R .hg/patches log --template ' rev {rev}: {desc}\n'
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
367 }
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
368 hg init qclonesource
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
369 cd qclonesource
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
370 echo foo > foo
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
371 hg add foo
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
372 hg ci -m 'add foo'
4862
cba10652a901 mq: improve qclone error handling when patch directory is not a repository.
Brendan Cully <brendan@kublai.com>
parents: 4219
diff changeset
373 hg qinit
4090
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
374 hg qnew patch1
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
375 echo bar >> foo
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
376 hg qrefresh -m 'change foo'
4862
cba10652a901 mq: improve qclone error handling when patch directory is not a repository.
Brendan Cully <brendan@kublai.com>
parents: 4219
diff changeset
377 cd ..
cba10652a901 mq: improve qclone error handling when patch directory is not a repository.
Brendan Cully <brendan@kublai.com>
parents: 4219
diff changeset
378
cba10652a901 mq: improve qclone error handling when patch directory is not a repository.
Brendan Cully <brendan@kublai.com>
parents: 4219
diff changeset
379 # repo with unversioned patch dir
cba10652a901 mq: improve qclone error handling when patch directory is not a repository.
Brendan Cully <brendan@kublai.com>
parents: 4219
diff changeset
380 hg qclone qclonesource failure
cba10652a901 mq: improve qclone error handling when patch directory is not a repository.
Brendan Cully <brendan@kublai.com>
parents: 4219
diff changeset
381
cba10652a901 mq: improve qclone error handling when patch directory is not a repository.
Brendan Cully <brendan@kublai.com>
parents: 4219
diff changeset
382 cd qclonesource
cba10652a901 mq: improve qclone error handling when patch directory is not a repository.
Brendan Cully <brendan@kublai.com>
parents: 4219
diff changeset
383 hg qinit -c
4090
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
384 hg qci -m checkpoint
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
385 qlog
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
386 cd ..
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
387
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
388 # repo with patches applied
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
389 hg qclone qclonesource qclonedest
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
390 cd qclonedest
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
391 qlog
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
392 cd ..
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
393
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
394 # repo with patches unapplied
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
395 cd qclonesource
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
396 hg qpop -a
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
397 qlog
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
398 cd ..
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
399 hg qclone qclonesource qclonedest2
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
400 cd qclonedest2
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
401 qlog
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
402 cd ..
785ad8cd1d31 qclone: don't call reposetup manually
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4065
diff changeset
403