##// END OF EJS Templates
merge: fix unknown file merge detection for case-folding systems...
Matt Mackall -
r16284:2b0a406d default
parent child Browse files
Show More
@@ -84,6 +84,7 b' class mergestate(object):'
84 def _checkunknownfile(repo, wctx, mctx, f):
84 def _checkunknownfile(repo, wctx, mctx, f):
85 return (not repo.dirstate._ignore(f)
85 return (not repo.dirstate._ignore(f)
86 and os.path.exists(repo.wjoin(f))
86 and os.path.exists(repo.wjoin(f))
87 and repo.dirstate.normalize(f) not in repo.dirstate
87 and mctx[f].cmp(wctx[f]))
88 and mctx[f].cmp(wctx[f]))
88
89
89 def _checkunknown(repo, wctx, mctx):
90 def _checkunknown(repo, wctx, mctx):
@@ -545,8 +546,6 b' def update(repo, node, branchmerge, forc'
545 if not force and (wc.files() or wc.deleted()):
546 if not force and (wc.files() or wc.deleted()):
546 raise util.Abort(_("outstanding uncommitted changes"),
547 raise util.Abort(_("outstanding uncommitted changes"),
547 hint=_("use 'hg status' to list changes"))
548 hint=_("use 'hg status' to list changes"))
548 if not force:
549 _checkunknown(repo, wc, p2)
550 for s in wc.substate:
549 for s in wc.substate:
551 if wc.sub(s).dirty():
550 if wc.sub(s).dirty():
552 raise util.Abort(_("outstanding uncommitted changes in "
551 raise util.Abort(_("outstanding uncommitted changes in "
@@ -570,6 +569,8 b' def update(repo, node, branchmerge, forc'
570 folding = not util.checkcase(repo.path)
569 folding = not util.checkcase(repo.path)
571 if folding:
570 if folding:
572 _checkcollision(p2, branchmerge and p1)
571 _checkcollision(p2, branchmerge and p1)
572 if not force:
573 _checkunknown(repo, wc, p2)
573 action += _forgetremoved(wc, p2, branchmerge)
574 action += _forgetremoved(wc, p2, branchmerge)
574 action += manifestmerge(repo, wc, p2, pa, overwrite, partial)
575 action += manifestmerge(repo, wc, p2, pa, overwrite, partial)
575
576
@@ -66,7 +66,7 b' no clobbering of untracked files with wr'
66 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
66 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
67 $ echo gold > a
67 $ echo gold > a
68 $ hg up
68 $ hg up
69 a: untracked file differs
69 A: untracked file differs
70 abort: untracked files in working directory differ from files in requested revision
70 abort: untracked files in working directory differ from files in requested revision
71 [255]
71 [255]
72 $ cat a
72 $ cat a
General Comments 0
You need to be logged in to leave comments. Login now