##// END OF EJS Templates
update: add experimental config for default way of handling dirty wdir...
Martin von Zweigbergk -
r31167:696e321b default
parent child Browse files
Show More
@@ -747,6 +747,9 def updatetotally(ui, repo, checkout, br
747 This returns whether conflict is detected at updating or not.
747 This returns whether conflict is detected at updating or not.
748 """
748 """
749 if updatecheck is None:
749 if updatecheck is None:
750 updatecheck = ui.config('experimental', 'updatecheck')
751 if updatecheck not in ('abort', 'none', 'linear'):
752 # If not configured, or invalid value configured
750 updatecheck = 'linear'
753 updatecheck = 'linear'
751 with repo.wlock():
754 with repo.wlock():
752 movemarkfrom = None
755 movemarkfrom = None
@@ -16,6 +16,21
16 $ echo 1.2 > foo
16 $ echo 1.2 > foo
17 $ hg ci -Am m
17 $ hg ci -Am m
18
18
19 Should respect config to disable dirty update
20 $ hg co -qC 0
21 $ echo 2 > foo
22 $ hg --config experimental.updatecheck=abort pull -u ../tt
23 pulling from ../tt
24 searching for changes
25 adding changesets
26 adding manifests
27 adding file changes
28 added 1 changesets with 1 changes to 1 files (+1 heads)
29 abort: uncommitted changes
30 [255]
31 $ hg --config extensions.strip= strip --no-backup tip
32 $ hg co -qC tip
33
19 Should not update to the other topological branch:
34 Should not update to the other topological branch:
20
35
21 $ hg pull -u ../tt
36 $ hg pull -u ../tt
@@ -195,6 +195,81 Cases are run as shown in that table, ro
195 parent=1
195 parent=1
196 M foo
196 M foo
197
197
198 $ echo '[experimental]' >> .hg/hgrc
199 $ echo 'updatecheck = abort' >> .hg/hgrc
200
201 $ revtest 'none dirty linear' dirty 1 2
202 abort: uncommitted changes
203 parent=1
204 M foo
205
206 $ revtest 'none dirty linear' dirty 1 2 -c
207 abort: uncommitted changes
208 parent=1
209 M foo
210
211 $ revtest 'none dirty linear' dirty 1 2 -C
212 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
213 parent=2
214
215 $ echo 'updatecheck = none' >> .hg/hgrc
216
217 $ revtest 'none dirty cross' dirty 3 4
218 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
219 parent=4
220 M foo
221
222 $ revtest 'none dirty linear' dirty 1 2
223 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
224 parent=2
225 M foo
226
227 $ revtest 'none dirty linear' dirty 1 2 -c
228 abort: uncommitted changes
229 parent=1
230 M foo
231
232 $ revtest 'none dirty linear' dirty 1 2 -C
233 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
234 parent=2
235
236 $ hg co -qC 3
237 $ echo dirty >> a
238 $ hg co --tool :merge3 4
239 merging a
240 warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
241 0 files updated, 0 files merged, 0 files removed, 1 files unresolved
242 use 'hg resolve' to retry unresolved file merges
243 [1]
244 $ hg st
245 M a
246 ? a.orig
247 $ cat a
248 <<<<<<< working copy: 6efa171f091b - test: 3
249 three
250 dirty
251 ||||||| base
252 three
253 =======
254 four
255 >>>>>>> destination: d047485b3896 b1 - test: 4
256 $ rm a.orig
257
258 Uses default value of "linear" when value is misspelled
259 $ echo 'updatecheck = linyar' >> .hg/hgrc
260
261 $ revtest 'dirty cross' dirty 3 4
262 abort: uncommitted changes
263 (commit or update --clean to discard changes)
264 parent=3
265 M foo
266
267 Setup for later tests
268 $ revtest 'none dirty linear' dirty 1 2 -c
269 abort: uncommitted changes
270 parent=1
271 M foo
272
198 $ cd ..
273 $ cd ..
199
274
200 Test updating to null revision
275 Test updating to null revision
General Comments 0
You need to be logged in to leave comments. Login now