Mercurial > public > mercurial-scm > hg
comparison mercurial/merge.py @ 18332:6ba58ab719e5
merge: .hgsubstate is special as merge destination, not as merge source
author | Mads Kiilerich <mads@kiilerich.com> |
---|---|
date | Tue, 15 Jan 2013 01:05:12 +0100 |
parents | e68cec5e28b0 |
children | f6f23ecafc9b |
comparison
equal
deleted
inserted
replaced
18331:e68cec5e28b0 | 18332:6ba58ab719e5 |
---|---|
340 # prescan for merges | 340 # prescan for merges |
341 for a in actions: | 341 for a in actions: |
342 f, m = a[:2] | 342 f, m = a[:2] |
343 if m == "m": # merge | 343 if m == "m": # merge |
344 f2, fd, flags, move = a[2:] | 344 f2, fd, flags, move = a[2:] |
345 if f == '.hgsubstate': # merged internally | 345 if fd == '.hgsubstate': # merged internally |
346 continue | 346 continue |
347 repo.ui.debug("preserving %s for resolve of %s\n" % (f, fd)) | 347 repo.ui.debug("preserving %s for resolve of %s\n" % (f, fd)) |
348 fcl = wctx[f] | 348 fcl = wctx[f] |
349 fco = mctx[f2] | 349 fco = mctx[f2] |
350 if mctx == actx: # backwards, use working dir parent as ancestor | 350 if mctx == actx: # backwards, use working dir parent as ancestor |
386 except OSError, inst: | 386 except OSError, inst: |
387 repo.ui.warn(_("update failed to remove %s: %s!\n") % | 387 repo.ui.warn(_("update failed to remove %s: %s!\n") % |
388 (f, inst.strerror)) | 388 (f, inst.strerror)) |
389 removed += 1 | 389 removed += 1 |
390 elif m == "m": # merge | 390 elif m == "m": # merge |
391 if f == '.hgsubstate': # subrepo states need updating | 391 if fd == '.hgsubstate': # subrepo states need updating |
392 subrepo.submerge(repo, wctx, mctx, wctx.ancestor(mctx), | 392 subrepo.submerge(repo, wctx, mctx, wctx.ancestor(mctx), |
393 overwrite) | 393 overwrite) |
394 continue | 394 continue |
395 f2, fd, flags, move = a[2:] | 395 f2, fd, flags, move = a[2:] |
396 audit(fd) | 396 audit(fd) |