Show More
@@ -0,0 +1,52 b'' | |||||
|
1 | $ "$TESTDIR/hghave" svn || exit 80 | |||
|
2 | ||||
|
3 | $ echo "[extensions]" >> $HGRCPATH | |||
|
4 | $ echo "mq=" >> $HGRCPATH | |||
|
5 | $ echo "[diff]" >> $HGRCPATH | |||
|
6 | $ echo "nodates=1" >> $HGRCPATH | |||
|
7 | ||||
|
8 | fn to create new repository w/dirty subrepo, and cd into it | |||
|
9 | $ mkrepo() { | |||
|
10 | > hg init $1 | |||
|
11 | > cd $1 | |||
|
12 | > hg qinit | |||
|
13 | > } | |||
|
14 | ||||
|
15 | ||||
|
16 | handle svn subrepos safely | |||
|
17 | ||||
|
18 | $ svnadmin create svn-repo-2499 | |||
|
19 | $ curpath=`pwd | tr '\\\\' /` | |||
|
20 | $ expr "$svnpath" : "\/" > /dev/null | |||
|
21 | > if [ $? -ne 0 ]; then | |||
|
22 | > curpath="/$curpath" | |||
|
23 | > fi | |||
|
24 | $ svnurl="file://$curpath/svn-repo-2499/project" | |||
|
25 | $ mkdir -p svn-project-2499/trunk | |||
|
26 | $ svn import -m 'init project' svn-project-2499 "$svnurl" | |||
|
27 | Adding svn-project-2499/trunk | |||
|
28 | ||||
|
29 | Committed revision 1. | |||
|
30 | ||||
|
31 | qnew on repo w/svn subrepo | |||
|
32 | $ mkrepo repo-2499-svn-subrepo | |||
|
33 | $ svn co "$svnurl"/trunk sub | |||
|
34 | Checked out revision 1. | |||
|
35 | $ echo 'sub = [svn]sub' >> .hgsub | |||
|
36 | $ hg add .hgsub | |||
|
37 | $ hg status -S | |||
|
38 | A .hgsub | |||
|
39 | ? sub/.svn/entries | |||
|
40 | $ hg qnew -m0 0.diff | |||
|
41 | committing subrepository sub | |||
|
42 | $ cd sub | |||
|
43 | $ echo a > a | |||
|
44 | $ svn add a | |||
|
45 | A a | |||
|
46 | $ svn st | |||
|
47 | A a | |||
|
48 | $ cd .. | |||
|
49 | $ hg status -S # doesn't show status for svn subrepos (yet) | |||
|
50 | $ hg qnew -m1 1.diff | |||
|
51 | abort: uncommitted changes in subrepository sub | |||
|
52 | [255] |
@@ -1,388 +1,347 b'' | |||||
1 | $ "$TESTDIR/hghave" svn || exit 80 |
|
|||
2 |
|
||||
3 |
|
|
1 | $ echo "[extensions]" >> $HGRCPATH | |
4 | $ echo "mq=" >> $HGRCPATH |
|
2 | $ echo "mq=" >> $HGRCPATH | |
5 | $ echo "record=" >> $HGRCPATH |
|
3 | $ echo "record=" >> $HGRCPATH | |
6 | $ echo "[diff]" >> $HGRCPATH |
|
4 | $ echo "[diff]" >> $HGRCPATH | |
7 | $ echo "nodates=1" >> $HGRCPATH |
|
5 | $ echo "nodates=1" >> $HGRCPATH | |
8 |
|
6 | |||
9 | $ stdin=`pwd`/stdin.tmp |
|
7 | $ stdin=`pwd`/stdin.tmp | |
10 |
|
8 | |||
11 | fn to create new repository w/dirty subrepo, and cd into it |
|
9 | fn to create new repository w/dirty subrepo, and cd into it | |
12 | $ mkrepo() { |
|
10 | $ mkrepo() { | |
13 | > hg init $1 |
|
11 | > hg init $1 | |
14 | > cd $1 |
|
12 | > cd $1 | |
15 | > hg qinit |
|
13 | > hg qinit | |
16 | > } |
|
14 | > } | |
17 |
|
15 | |||
18 | fn to create dirty subrepo |
|
16 | fn to create dirty subrepo | |
19 | $ mksubrepo() { |
|
17 | $ mksubrepo() { | |
20 | > hg init $1 |
|
18 | > hg init $1 | |
21 | > cd $1 |
|
19 | > cd $1 | |
22 | > echo a > a |
|
20 | > echo a > a | |
23 | > hg add |
|
21 | > hg add | |
24 | > cd .. |
|
22 | > cd .. | |
25 | > } |
|
23 | > } | |
26 |
|
24 | |||
27 | $ testadd() { |
|
25 | $ testadd() { | |
28 | > cat - > "$stdin" |
|
26 | > cat - > "$stdin" | |
29 | > mksubrepo sub |
|
27 | > mksubrepo sub | |
30 | > echo sub = sub >> .hgsub |
|
28 | > echo sub = sub >> .hgsub | |
31 | > hg add .hgsub |
|
29 | > hg add .hgsub | |
32 | > echo % abort when adding .hgsub w/dirty subrepo |
|
30 | > echo % abort when adding .hgsub w/dirty subrepo | |
33 | > hg status -S |
|
31 | > hg status -S | |
34 | > echo '%' $* |
|
32 | > echo '%' $* | |
35 | > cat "$stdin" | hg $* |
|
33 | > cat "$stdin" | hg $* | |
36 | > echo [$?] |
|
34 | > echo [$?] | |
37 | > hg -R sub ci -m0sub |
|
35 | > hg -R sub ci -m0sub | |
38 | > echo % update substate when adding .hgsub w/clean updated subrepo |
|
36 | > echo % update substate when adding .hgsub w/clean updated subrepo | |
39 | > hg status -S |
|
37 | > hg status -S | |
40 | > echo '%' $* |
|
38 | > echo '%' $* | |
41 | > cat "$stdin" | hg $* |
|
39 | > cat "$stdin" | hg $* | |
42 | > hg debugsub |
|
40 | > hg debugsub | |
43 | > } |
|
41 | > } | |
44 |
|
42 | |||
45 | $ testmod() { |
|
43 | $ testmod() { | |
46 | > cat - > "$stdin" |
|
44 | > cat - > "$stdin" | |
47 | > mksubrepo sub2 |
|
45 | > mksubrepo sub2 | |
48 | > echo sub2 = sub2 >> .hgsub |
|
46 | > echo sub2 = sub2 >> .hgsub | |
49 | > echo % abort when modifying .hgsub w/dirty subrepo |
|
47 | > echo % abort when modifying .hgsub w/dirty subrepo | |
50 | > hg status -S |
|
48 | > hg status -S | |
51 | > echo '%' $* |
|
49 | > echo '%' $* | |
52 | > cat "$stdin" | hg $* |
|
50 | > cat "$stdin" | hg $* | |
53 | > echo [$?] |
|
51 | > echo [$?] | |
54 | > hg -R sub2 ci -m0sub2 |
|
52 | > hg -R sub2 ci -m0sub2 | |
55 | > echo % update substate when modifying .hgsub w/clean updated subrepo |
|
53 | > echo % update substate when modifying .hgsub w/clean updated subrepo | |
56 | > hg status -S |
|
54 | > hg status -S | |
57 | > echo '%' $* |
|
55 | > echo '%' $* | |
58 | > cat "$stdin" | hg $* |
|
56 | > cat "$stdin" | hg $* | |
59 | > hg debugsub |
|
57 | > hg debugsub | |
60 | > } |
|
58 | > } | |
61 |
|
59 | |||
62 | $ testrm1() { |
|
60 | $ testrm1() { | |
63 | > cat - > "$stdin" |
|
61 | > cat - > "$stdin" | |
64 | > mksubrepo sub3 |
|
62 | > mksubrepo sub3 | |
65 | > echo sub3 = sub3 >> .hgsub |
|
63 | > echo sub3 = sub3 >> .hgsub | |
66 | > hg ci -Aqmsub3 |
|
64 | > hg ci -Aqmsub3 | |
67 | > $EXTRA |
|
65 | > $EXTRA | |
68 | > echo b >> sub3/a |
|
66 | > echo b >> sub3/a | |
69 | > hg rm .hgsub |
|
67 | > hg rm .hgsub | |
70 | > echo % update substate when removing .hgsub w/dirty subrepo |
|
68 | > echo % update substate when removing .hgsub w/dirty subrepo | |
71 | > hg status -S |
|
69 | > hg status -S | |
72 | > echo '%' $* |
|
70 | > echo '%' $* | |
73 | > cat "$stdin" | hg $* |
|
71 | > cat "$stdin" | hg $* | |
74 | > echo % debugsub should be empty |
|
72 | > echo % debugsub should be empty | |
75 | > hg debugsub |
|
73 | > hg debugsub | |
76 | > } |
|
74 | > } | |
77 |
|
75 | |||
78 | $ testrm2() { |
|
76 | $ testrm2() { | |
79 | > cat - > "$stdin" |
|
77 | > cat - > "$stdin" | |
80 | > mksubrepo sub4 |
|
78 | > mksubrepo sub4 | |
81 | > echo sub4 = sub4 >> .hgsub |
|
79 | > echo sub4 = sub4 >> .hgsub | |
82 | > hg ci -Aqmsub4 |
|
80 | > hg ci -Aqmsub4 | |
83 | > $EXTRA |
|
81 | > $EXTRA | |
84 | > hg rm .hgsub |
|
82 | > hg rm .hgsub | |
85 | > echo % update substate when removing .hgsub w/clean updated subrepo |
|
83 | > echo % update substate when removing .hgsub w/clean updated subrepo | |
86 | > hg status -S |
|
84 | > hg status -S | |
87 | > echo '%' $* |
|
85 | > echo '%' $* | |
88 | > cat "$stdin" | hg $* |
|
86 | > cat "$stdin" | hg $* | |
89 | > echo % debugsub should be empty |
|
87 | > echo % debugsub should be empty | |
90 | > hg debugsub |
|
88 | > hg debugsub | |
91 | > } |
|
89 | > } | |
92 |
|
90 | |||
93 |
|
91 | |||
94 | handle subrepos safely on qnew |
|
92 | handle subrepos safely on qnew | |
95 |
|
93 | |||
96 | $ mkrepo repo-2499-qnew |
|
94 | $ mkrepo repo-2499-qnew | |
97 | $ testadd qnew -m0 0.diff |
|
95 | $ testadd qnew -m0 0.diff | |
98 | adding a |
|
96 | adding a | |
99 | % abort when adding .hgsub w/dirty subrepo |
|
97 | % abort when adding .hgsub w/dirty subrepo | |
100 | A .hgsub |
|
98 | A .hgsub | |
101 | A sub/a |
|
99 | A sub/a | |
102 | % qnew -m0 0.diff |
|
100 | % qnew -m0 0.diff | |
103 | abort: uncommitted changes in subrepository sub |
|
101 | abort: uncommitted changes in subrepository sub | |
104 | [255] |
|
102 | [255] | |
105 | % update substate when adding .hgsub w/clean updated subrepo |
|
103 | % update substate when adding .hgsub w/clean updated subrepo | |
106 | A .hgsub |
|
104 | A .hgsub | |
107 | % qnew -m0 0.diff |
|
105 | % qnew -m0 0.diff | |
108 | committing subrepository sub |
|
106 | committing subrepository sub | |
109 | path sub |
|
107 | path sub | |
110 | source sub |
|
108 | source sub | |
111 | revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31 |
|
109 | revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31 | |
112 |
|
110 | |||
113 | $ testmod qnew -m1 1.diff |
|
111 | $ testmod qnew -m1 1.diff | |
114 | adding a |
|
112 | adding a | |
115 | % abort when modifying .hgsub w/dirty subrepo |
|
113 | % abort when modifying .hgsub w/dirty subrepo | |
116 | M .hgsub |
|
114 | M .hgsub | |
117 | A sub2/a |
|
115 | A sub2/a | |
118 | % qnew -m1 1.diff |
|
116 | % qnew -m1 1.diff | |
119 | abort: uncommitted changes in subrepository sub2 |
|
117 | abort: uncommitted changes in subrepository sub2 | |
120 | [255] |
|
118 | [255] | |
121 | % update substate when modifying .hgsub w/clean updated subrepo |
|
119 | % update substate when modifying .hgsub w/clean updated subrepo | |
122 | M .hgsub |
|
120 | M .hgsub | |
123 | % qnew -m1 1.diff |
|
121 | % qnew -m1 1.diff | |
124 | committing subrepository sub2 |
|
122 | committing subrepository sub2 | |
125 | path sub |
|
123 | path sub | |
126 | source sub |
|
124 | source sub | |
127 | revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31 |
|
125 | revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31 | |
128 | path sub2 |
|
126 | path sub2 | |
129 | source sub2 |
|
127 | source sub2 | |
130 | revision 1f94c7611cc6b74f5a17b16121a1170d44776845 |
|
128 | revision 1f94c7611cc6b74f5a17b16121a1170d44776845 | |
131 |
|
129 | |||
132 | $ hg qpop -qa |
|
130 | $ hg qpop -qa | |
133 | patch queue now empty |
|
131 | patch queue now empty | |
134 | $ testrm1 qnew -m2 2.diff |
|
132 | $ testrm1 qnew -m2 2.diff | |
135 | adding a |
|
133 | adding a | |
136 | % update substate when removing .hgsub w/dirty subrepo |
|
134 | % update substate when removing .hgsub w/dirty subrepo | |
137 | M sub3/a |
|
135 | M sub3/a | |
138 | R .hgsub |
|
136 | R .hgsub | |
139 | % qnew -m2 2.diff |
|
137 | % qnew -m2 2.diff | |
140 | % debugsub should be empty |
|
138 | % debugsub should be empty | |
141 |
|
139 | |||
142 | $ hg qpop -qa |
|
140 | $ hg qpop -qa | |
143 | patch queue now empty |
|
141 | patch queue now empty | |
144 | $ testrm2 qnew -m3 3.diff |
|
142 | $ testrm2 qnew -m3 3.diff | |
145 | adding a |
|
143 | adding a | |
146 | % update substate when removing .hgsub w/clean updated subrepo |
|
144 | % update substate when removing .hgsub w/clean updated subrepo | |
147 | R .hgsub |
|
145 | R .hgsub | |
148 | % qnew -m3 3.diff |
|
146 | % qnew -m3 3.diff | |
149 | % debugsub should be empty |
|
147 | % debugsub should be empty | |
150 |
|
148 | |||
151 | $ cd .. |
|
149 | $ cd .. | |
152 |
|
150 | |||
153 |
|
151 | |||
154 | handle subrepos safely on qrefresh |
|
152 | handle subrepos safely on qrefresh | |
155 |
|
153 | |||
156 | $ mkrepo repo-2499-qrefresh |
|
154 | $ mkrepo repo-2499-qrefresh | |
157 | $ hg qnew -m0 0.diff |
|
155 | $ hg qnew -m0 0.diff | |
158 | $ testadd qrefresh |
|
156 | $ testadd qrefresh | |
159 | adding a |
|
157 | adding a | |
160 | % abort when adding .hgsub w/dirty subrepo |
|
158 | % abort when adding .hgsub w/dirty subrepo | |
161 | A .hgsub |
|
159 | A .hgsub | |
162 | A sub/a |
|
160 | A sub/a | |
163 | % qrefresh |
|
161 | % qrefresh | |
164 | abort: uncommitted changes in subrepository sub |
|
162 | abort: uncommitted changes in subrepository sub | |
165 | [255] |
|
163 | [255] | |
166 | % update substate when adding .hgsub w/clean updated subrepo |
|
164 | % update substate when adding .hgsub w/clean updated subrepo | |
167 | A .hgsub |
|
165 | A .hgsub | |
168 | % qrefresh |
|
166 | % qrefresh | |
169 | committing subrepository sub |
|
167 | committing subrepository sub | |
170 | path sub |
|
168 | path sub | |
171 | source sub |
|
169 | source sub | |
172 | revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31 |
|
170 | revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31 | |
173 |
|
171 | |||
174 | $ hg qnew -m1 1.diff |
|
172 | $ hg qnew -m1 1.diff | |
175 | $ testmod qrefresh |
|
173 | $ testmod qrefresh | |
176 | adding a |
|
174 | adding a | |
177 | % abort when modifying .hgsub w/dirty subrepo |
|
175 | % abort when modifying .hgsub w/dirty subrepo | |
178 | M .hgsub |
|
176 | M .hgsub | |
179 | A sub2/a |
|
177 | A sub2/a | |
180 | % qrefresh |
|
178 | % qrefresh | |
181 | abort: uncommitted changes in subrepository sub2 |
|
179 | abort: uncommitted changes in subrepository sub2 | |
182 | [255] |
|
180 | [255] | |
183 | % update substate when modifying .hgsub w/clean updated subrepo |
|
181 | % update substate when modifying .hgsub w/clean updated subrepo | |
184 | M .hgsub |
|
182 | M .hgsub | |
185 | % qrefresh |
|
183 | % qrefresh | |
186 | committing subrepository sub2 |
|
184 | committing subrepository sub2 | |
187 | path sub |
|
185 | path sub | |
188 | source sub |
|
186 | source sub | |
189 | revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31 |
|
187 | revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31 | |
190 | path sub2 |
|
188 | path sub2 | |
191 | source sub2 |
|
189 | source sub2 | |
192 | revision 1f94c7611cc6b74f5a17b16121a1170d44776845 |
|
190 | revision 1f94c7611cc6b74f5a17b16121a1170d44776845 | |
193 |
|
191 | |||
194 | $ hg qpop -qa |
|
192 | $ hg qpop -qa | |
195 | patch queue now empty |
|
193 | patch queue now empty | |
196 | $ EXTRA='hg qnew -m2 2.diff' testrm1 qrefresh |
|
194 | $ EXTRA='hg qnew -m2 2.diff' testrm1 qrefresh | |
197 | adding a |
|
195 | adding a | |
198 | % update substate when removing .hgsub w/dirty subrepo |
|
196 | % update substate when removing .hgsub w/dirty subrepo | |
199 | M sub3/a |
|
197 | M sub3/a | |
200 | R .hgsub |
|
198 | R .hgsub | |
201 | % qrefresh |
|
199 | % qrefresh | |
202 | % debugsub should be empty |
|
200 | % debugsub should be empty | |
203 |
|
201 | |||
204 | $ hg qpop -qa |
|
202 | $ hg qpop -qa | |
205 | patch queue now empty |
|
203 | patch queue now empty | |
206 | $ EXTRA='hg qnew -m3 3.diff' testrm2 qrefresh |
|
204 | $ EXTRA='hg qnew -m3 3.diff' testrm2 qrefresh | |
207 | adding a |
|
205 | adding a | |
208 | % update substate when removing .hgsub w/clean updated subrepo |
|
206 | % update substate when removing .hgsub w/clean updated subrepo | |
209 | R .hgsub |
|
207 | R .hgsub | |
210 | % qrefresh |
|
208 | % qrefresh | |
211 | % debugsub should be empty |
|
209 | % debugsub should be empty | |
212 |
|
210 | |||
213 | $ cd .. |
|
211 | $ cd .. | |
214 |
|
212 | |||
215 |
|
213 | |||
216 | handle subrepos safely on qpush/qpop |
|
214 | handle subrepos safely on qpush/qpop | |
217 |
|
215 | |||
218 | $ mkrepo repo-2499-qpush |
|
216 | $ mkrepo repo-2499-qpush | |
219 | $ mksubrepo sub |
|
217 | $ mksubrepo sub | |
220 | adding a |
|
218 | adding a | |
221 | $ hg -R sub ci -m0sub |
|
219 | $ hg -R sub ci -m0sub | |
222 | $ echo sub = sub > .hgsub |
|
220 | $ echo sub = sub > .hgsub | |
223 | $ hg add .hgsub |
|
221 | $ hg add .hgsub | |
224 | $ hg qnew -m0 0.diff |
|
222 | $ hg qnew -m0 0.diff | |
225 | committing subrepository sub |
|
223 | committing subrepository sub | |
226 | $ hg debugsub |
|
224 | $ hg debugsub | |
227 | path sub |
|
225 | path sub | |
228 | source sub |
|
226 | source sub | |
229 | revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31 |
|
227 | revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31 | |
230 |
|
228 | |||
231 | qpop |
|
229 | qpop | |
232 | $ hg qpop |
|
230 | $ hg qpop | |
233 | popping 0.diff |
|
231 | popping 0.diff | |
234 | patch queue now empty |
|
232 | patch queue now empty | |
235 | $ hg status -AS |
|
233 | $ hg status -AS | |
236 | $ hg debugsub |
|
234 | $ hg debugsub | |
237 |
|
235 | |||
238 | qpush |
|
236 | qpush | |
239 | $ hg qpush |
|
237 | $ hg qpush | |
240 | applying 0.diff |
|
238 | applying 0.diff | |
241 | now at: 0.diff |
|
239 | now at: 0.diff | |
242 | $ hg status -AS |
|
240 | $ hg status -AS | |
243 | C .hgsub |
|
241 | C .hgsub | |
244 | C .hgsubstate |
|
242 | C .hgsubstate | |
245 | C sub/a |
|
243 | C sub/a | |
246 | $ hg debugsub |
|
244 | $ hg debugsub | |
247 | path sub |
|
245 | path sub | |
248 | source sub |
|
246 | source sub | |
249 | revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31 |
|
247 | revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31 | |
250 |
|
248 | |||
251 | $ cd .. |
|
249 | $ cd .. | |
252 |
|
250 | |||
253 |
|
251 | |||
254 | handle subrepos safely on qrecord |
|
252 | handle subrepos safely on qrecord | |
255 |
|
253 | |||
256 | $ mkrepo repo-2499-qrecord |
|
254 | $ mkrepo repo-2499-qrecord | |
257 | $ testadd qrecord --config ui.interactive=1 -m0 0.diff <<EOF |
|
255 | $ testadd qrecord --config ui.interactive=1 -m0 0.diff <<EOF | |
258 | > y |
|
256 | > y | |
259 | > y |
|
257 | > y | |
260 | > EOF |
|
258 | > EOF | |
261 | adding a |
|
259 | adding a | |
262 | % abort when adding .hgsub w/dirty subrepo |
|
260 | % abort when adding .hgsub w/dirty subrepo | |
263 | A .hgsub |
|
261 | A .hgsub | |
264 | A sub/a |
|
262 | A sub/a | |
265 | % qrecord --config ui.interactive=1 -m0 0.diff |
|
263 | % qrecord --config ui.interactive=1 -m0 0.diff | |
266 | diff --git a/.hgsub b/.hgsub |
|
264 | diff --git a/.hgsub b/.hgsub | |
267 | new file mode 100644 |
|
265 | new file mode 100644 | |
268 | examine changes to '.hgsub'? [Ynsfdaq?] |
|
266 | examine changes to '.hgsub'? [Ynsfdaq?] | |
269 | abort: uncommitted changes in subrepository sub |
|
267 | abort: uncommitted changes in subrepository sub | |
270 | [255] |
|
268 | [255] | |
271 | % update substate when adding .hgsub w/clean updated subrepo |
|
269 | % update substate when adding .hgsub w/clean updated subrepo | |
272 | A .hgsub |
|
270 | A .hgsub | |
273 | % qrecord --config ui.interactive=1 -m0 0.diff |
|
271 | % qrecord --config ui.interactive=1 -m0 0.diff | |
274 | diff --git a/.hgsub b/.hgsub |
|
272 | diff --git a/.hgsub b/.hgsub | |
275 | new file mode 100644 |
|
273 | new file mode 100644 | |
276 | examine changes to '.hgsub'? [Ynsfdaq?] |
|
274 | examine changes to '.hgsub'? [Ynsfdaq?] | |
277 | committing subrepository sub |
|
275 | committing subrepository sub | |
278 | path sub |
|
276 | path sub | |
279 | source sub |
|
277 | source sub | |
280 | revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31 |
|
278 | revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31 | |
281 |
|
279 | |||
282 | $ testmod qrecord --config ui.interactive=1 -m1 1.diff <<EOF |
|
280 | $ testmod qrecord --config ui.interactive=1 -m1 1.diff <<EOF | |
283 | > y |
|
281 | > y | |
284 | > y |
|
282 | > y | |
285 | > EOF |
|
283 | > EOF | |
286 | adding a |
|
284 | adding a | |
287 | % abort when modifying .hgsub w/dirty subrepo |
|
285 | % abort when modifying .hgsub w/dirty subrepo | |
288 | M .hgsub |
|
286 | M .hgsub | |
289 | A sub2/a |
|
287 | A sub2/a | |
290 | % qrecord --config ui.interactive=1 -m1 1.diff |
|
288 | % qrecord --config ui.interactive=1 -m1 1.diff | |
291 | diff --git a/.hgsub b/.hgsub |
|
289 | diff --git a/.hgsub b/.hgsub | |
292 | 1 hunks, 1 lines changed |
|
290 | 1 hunks, 1 lines changed | |
293 | examine changes to '.hgsub'? [Ynsfdaq?] |
|
291 | examine changes to '.hgsub'? [Ynsfdaq?] | |
294 | @@ -1,1 +1,2 @@ |
|
292 | @@ -1,1 +1,2 @@ | |
295 | sub = sub |
|
293 | sub = sub | |
296 | +sub2 = sub2 |
|
294 | +sub2 = sub2 | |
297 | record this change to '.hgsub'? [Ynsfdaq?] |
|
295 | record this change to '.hgsub'? [Ynsfdaq?] | |
298 | abort: uncommitted changes in subrepository sub2 |
|
296 | abort: uncommitted changes in subrepository sub2 | |
299 | [255] |
|
297 | [255] | |
300 | % update substate when modifying .hgsub w/clean updated subrepo |
|
298 | % update substate when modifying .hgsub w/clean updated subrepo | |
301 | M .hgsub |
|
299 | M .hgsub | |
302 | % qrecord --config ui.interactive=1 -m1 1.diff |
|
300 | % qrecord --config ui.interactive=1 -m1 1.diff | |
303 | diff --git a/.hgsub b/.hgsub |
|
301 | diff --git a/.hgsub b/.hgsub | |
304 | 1 hunks, 1 lines changed |
|
302 | 1 hunks, 1 lines changed | |
305 | examine changes to '.hgsub'? [Ynsfdaq?] |
|
303 | examine changes to '.hgsub'? [Ynsfdaq?] | |
306 | @@ -1,1 +1,2 @@ |
|
304 | @@ -1,1 +1,2 @@ | |
307 | sub = sub |
|
305 | sub = sub | |
308 | +sub2 = sub2 |
|
306 | +sub2 = sub2 | |
309 | record this change to '.hgsub'? [Ynsfdaq?] |
|
307 | record this change to '.hgsub'? [Ynsfdaq?] | |
310 | committing subrepository sub2 |
|
308 | committing subrepository sub2 | |
311 | path sub |
|
309 | path sub | |
312 | source sub |
|
310 | source sub | |
313 | revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31 |
|
311 | revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31 | |
314 | path sub2 |
|
312 | path sub2 | |
315 | source sub2 |
|
313 | source sub2 | |
316 | revision 1f94c7611cc6b74f5a17b16121a1170d44776845 |
|
314 | revision 1f94c7611cc6b74f5a17b16121a1170d44776845 | |
317 |
|
315 | |||
318 | $ hg qpop -qa |
|
316 | $ hg qpop -qa | |
319 | patch queue now empty |
|
317 | patch queue now empty | |
320 | $ EXTRA= testrm1 qrecord --config ui.interactive=1 -m2 2.diff <<EOF |
|
318 | $ EXTRA= testrm1 qrecord --config ui.interactive=1 -m2 2.diff <<EOF | |
321 | > y |
|
319 | > y | |
322 | > y |
|
320 | > y | |
323 | > EOF |
|
321 | > EOF | |
324 | adding a |
|
322 | adding a | |
325 | % update substate when removing .hgsub w/dirty subrepo |
|
323 | % update substate when removing .hgsub w/dirty subrepo | |
326 | M sub3/a |
|
324 | M sub3/a | |
327 | R .hgsub |
|
325 | R .hgsub | |
328 | % qrecord --config ui.interactive=1 -m2 2.diff |
|
326 | % qrecord --config ui.interactive=1 -m2 2.diff | |
329 | diff --git a/.hgsub b/.hgsub |
|
327 | diff --git a/.hgsub b/.hgsub | |
330 | deleted file mode 100644 |
|
328 | deleted file mode 100644 | |
331 | examine changes to '.hgsub'? [Ynsfdaq?] |
|
329 | examine changes to '.hgsub'? [Ynsfdaq?] | |
332 | % debugsub should be empty |
|
330 | % debugsub should be empty | |
333 |
|
331 | |||
334 | $ hg qpop -qa |
|
332 | $ hg qpop -qa | |
335 | patch queue now empty |
|
333 | patch queue now empty | |
336 | $ EXTRA= testrm2 qrecord --config ui.interactive=1 -m3 3.diff <<EOF |
|
334 | $ EXTRA= testrm2 qrecord --config ui.interactive=1 -m3 3.diff <<EOF | |
337 | > y |
|
335 | > y | |
338 | > y |
|
336 | > y | |
339 | > EOF |
|
337 | > EOF | |
340 | adding a |
|
338 | adding a | |
341 | % update substate when removing .hgsub w/clean updated subrepo |
|
339 | % update substate when removing .hgsub w/clean updated subrepo | |
342 | R .hgsub |
|
340 | R .hgsub | |
343 | % qrecord --config ui.interactive=1 -m3 3.diff |
|
341 | % qrecord --config ui.interactive=1 -m3 3.diff | |
344 | diff --git a/.hgsub b/.hgsub |
|
342 | diff --git a/.hgsub b/.hgsub | |
345 | deleted file mode 100644 |
|
343 | deleted file mode 100644 | |
346 | examine changes to '.hgsub'? [Ynsfdaq?] |
|
344 | examine changes to '.hgsub'? [Ynsfdaq?] | |
347 | % debugsub should be empty |
|
345 | % debugsub should be empty | |
348 |
|
346 | |||
349 | $ cd .. |
|
347 | $ cd .. | |
350 |
|
||||
351 |
|
||||
352 | handle svn subrepos safely |
|
|||
353 |
|
||||
354 | $ svnadmin create svn-repo-2499 |
|
|||
355 | $ curpath=`pwd | tr '\\\\' /` |
|
|||
356 | $ expr "$svnpath" : "\/" > /dev/null |
|
|||
357 | > if [ $? -ne 0 ]; then |
|
|||
358 | > curpath="/$curpath" |
|
|||
359 | > fi |
|
|||
360 | $ svnurl="file://$curpath/svn-repo-2499/project" |
|
|||
361 | $ mkdir -p svn-project-2499/trunk |
|
|||
362 | $ svn import -m 'init project' svn-project-2499 "$svnurl" |
|
|||
363 | Adding svn-project-2499/trunk |
|
|||
364 |
|
||||
365 | Committed revision 1. |
|
|||
366 |
|
||||
367 | qnew on repo w/svn subrepo |
|
|||
368 | $ mkrepo repo-2499-svn-subrepo |
|
|||
369 | $ svn co "$svnurl"/trunk sub |
|
|||
370 | Checked out revision 1. |
|
|||
371 | $ echo 'sub = [svn]sub' >> .hgsub |
|
|||
372 | $ hg add .hgsub |
|
|||
373 | $ hg status -S |
|
|||
374 | A .hgsub |
|
|||
375 | ? sub/.svn/entries |
|
|||
376 | $ hg qnew -m0 0.diff |
|
|||
377 | committing subrepository sub |
|
|||
378 | $ cd sub |
|
|||
379 | $ echo a > a |
|
|||
380 | $ svn add a |
|
|||
381 | A a |
|
|||
382 | $ svn st |
|
|||
383 | A a |
|
|||
384 | $ cd .. |
|
|||
385 | $ hg status -S # doesn't show status for svn subrepos (yet) |
|
|||
386 | $ hg qnew -m1 1.diff |
|
|||
387 | abort: uncommitted changes in subrepository sub |
|
|||
388 | [255] |
|
General Comments 0
You need to be logged in to leave comments.
Login now