equal
deleted
inserted
replaced
231 else: |
231 else: |
232 warn(_(b"%s: untracked directory conflicts with file\n") % f) |
232 warn(_(b"%s: untracked directory conflicts with file\n") % f) |
233 else: |
233 else: |
234 warn(_(b"%s: untracked file differs\n") % f) |
234 warn(_(b"%s: untracked file differs\n") % f) |
235 if abortconflicts: |
235 if abortconflicts: |
236 raise error.Abort( |
236 raise error.StateError( |
237 _( |
237 _( |
238 b"untracked files in working directory " |
238 b"untracked files in working directory " |
239 b"differ from files in requested revision" |
239 b"differ from files in requested revision" |
240 ) |
240 ) |
241 ) |
241 ) |
339 # check case-folding collision in provisional merged manifest |
339 # check case-folding collision in provisional merged manifest |
340 foldmap = {} |
340 foldmap = {} |
341 for f in pmmf: |
341 for f in pmmf: |
342 fold = util.normcase(f) |
342 fold = util.normcase(f) |
343 if fold in foldmap: |
343 if fold in foldmap: |
344 raise error.Abort( |
344 raise error.StateError( |
345 _(b"case-folding collision between %s and %s") |
345 _(b"case-folding collision between %s and %s") |
346 % (f, foldmap[fold]) |
346 % (f, foldmap[fold]) |
347 ) |
347 ) |
348 foldmap[fold] = f |
348 foldmap[fold] = f |
349 |
349 |
350 # check case-folding of directories |
350 # check case-folding of directories |
351 foldprefix = unfoldprefix = lastfull = b'' |
351 foldprefix = unfoldprefix = lastfull = b'' |
352 for fold, f in sorted(foldmap.items()): |
352 for fold, f in sorted(foldmap.items()): |
353 if fold.startswith(foldprefix) and not f.startswith(unfoldprefix): |
353 if fold.startswith(foldprefix) and not f.startswith(unfoldprefix): |
354 # the folded prefix matches but actual casing is different |
354 # the folded prefix matches but actual casing is different |
355 raise error.Abort( |
355 raise error.StateError( |
356 _(b"case-folding collision between %s and directory of %s") |
356 _(b"case-folding collision between %s and directory of %s") |
357 % (lastfull, f) |
357 % (lastfull, f) |
358 ) |
358 ) |
359 foldprefix = fold + b'/' |
359 foldprefix = fold + b'/' |
360 unfoldprefix = f + b'/' |
360 unfoldprefix = f + b'/' |
502 break |
502 break |
503 |
503 |
504 if invalidconflicts: |
504 if invalidconflicts: |
505 for p in invalidconflicts: |
505 for p in invalidconflicts: |
506 repo.ui.warn(_(b"%s: is both a file and a directory\n") % p) |
506 repo.ui.warn(_(b"%s: is both a file and a directory\n") % p) |
507 raise error.Abort(_(b"destination manifest contains path conflicts")) |
507 raise error.StateError( |
|
508 _(b"destination manifest contains path conflicts") |
|
509 ) |
508 |
510 |
509 |
511 |
510 def _filternarrowactions(narrowmatch, branchmerge, mresult): |
512 def _filternarrowactions(narrowmatch, branchmerge, mresult): |
511 """ |
513 """ |
512 Filters out actions that can ignored because the repo is narrowed. |
514 Filters out actions that can ignored because the repo is narrowed. |
1916 |
1918 |
1917 overwrite = force and not branchmerge |
1919 overwrite = force and not branchmerge |
1918 ### check phase |
1920 ### check phase |
1919 if not overwrite: |
1921 if not overwrite: |
1920 if len(pl) > 1: |
1922 if len(pl) > 1: |
1921 raise error.Abort(_(b"outstanding uncommitted merge")) |
1923 raise error.StateError(_(b"outstanding uncommitted merge")) |
1922 ms = wc.mergestate() |
1924 ms = wc.mergestate() |
1923 if ms.unresolvedcount(): |
1925 if ms.unresolvedcount(): |
1924 raise error.Abort( |
1926 raise error.StateError( |
1925 _(b"outstanding merge conflicts"), |
1927 _(b"outstanding merge conflicts"), |
1926 hint=_(b"use 'hg resolve' to resolve"), |
1928 hint=_(b"use 'hg resolve' to resolve"), |
1927 ) |
1929 ) |
1928 if branchmerge: |
1930 if branchmerge: |
1929 if pas == [p2]: |
1931 if pas == [p2]: |
2005 |
2007 |
2006 if updatecheck == UPDATECHECK_NO_CONFLICT: |
2008 if updatecheck == UPDATECHECK_NO_CONFLICT: |
2007 if mresult.hasconflicts(): |
2009 if mresult.hasconflicts(): |
2008 msg = _(b"conflicting changes") |
2010 msg = _(b"conflicting changes") |
2009 hint = _(b"commit or update --clean to discard changes") |
2011 hint = _(b"commit or update --clean to discard changes") |
2010 raise error.Abort(msg, hint=hint) |
2012 raise error.StateError(msg, hint=hint) |
2011 |
2013 |
2012 # Prompt and create actions. Most of this is in the resolve phase |
2014 # Prompt and create actions. Most of this is in the resolve phase |
2013 # already, but we can't handle .hgsubstate in filemerge or |
2015 # already, but we can't handle .hgsubstate in filemerge or |
2014 # subrepoutil.submerge yet so we have to keep prompting for it. |
2016 # subrepoutil.submerge yet so we have to keep prompting for it. |
2015 vals = mresult.getfile(b'.hgsubstate') |
2017 vals = mresult.getfile(b'.hgsubstate') |