Mercurial > hg
comparison hgext/largefiles/overrides.py @ 20295:36333ff8c54d
largefiles: drop redundant special handling of merges of renames
It is unclear what cases this was supposed to cover but it do no longer seem
relevant.
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Sat, 16 Nov 2013 15:46:29 -0500 |
parents | 28fe5abc906f |
children | 675f578856dd |
comparison
equal
deleted
inserted
replaced
20294:243ea5ffdf31 | 20295:36333ff8c54d |
---|---|
413 processed.append(action) | 413 processed.append(action) |
414 | 414 |
415 return processed | 415 return processed |
416 | 416 |
417 # Override filemerge to prompt the user about how they wish to merge | 417 # Override filemerge to prompt the user about how they wish to merge |
418 # largefiles. This will handle identical edits, and copy/rename + | 418 # largefiles. This will handle identical edits without prompting the user. |
419 # edit without prompting the user. | |
420 def overridefilemerge(origfn, repo, mynode, orig, fcd, fco, fca): | 419 def overridefilemerge(origfn, repo, mynode, orig, fcd, fco, fca): |
421 # Use better variable names here. Because this is a wrapper we cannot | 420 # Use better variable names here. Because this is a wrapper we cannot |
422 # change the variable names in the function declaration. | 421 # change the variable names in the function declaration. |
423 fcdest, fcother, fcancestor = fcd, fco, fca | 422 fcdest, fcother, fcancestor = fcd, fco, fca |
424 if not lfutil.isstandin(orig): | 423 if not lfutil.isstandin(orig): |
425 return origfn(repo, mynode, orig, fcdest, fcother, fcancestor) | 424 return origfn(repo, mynode, orig, fcdest, fcother, fcancestor) |
426 else: | 425 else: |
427 if not fcother.cmp(fcdest): # files identical? | 426 if not fcother.cmp(fcdest): # files identical? |
428 return None | 427 return None |
429 | 428 |
430 # backwards, use working dir parent as ancestor | |
431 if fcancestor == fcother: | |
432 fcancestor = fcdest.parents()[0] | |
433 | |
434 if orig != fcother.path(): | 429 if orig != fcother.path(): |
435 repo.ui.status(_('merging %s and %s to %s\n') | 430 repo.ui.status(_('merging %s and %s to %s\n') |
436 % (lfutil.splitstandin(orig), | 431 % (lfutil.splitstandin(orig), |
437 lfutil.splitstandin(fcother.path()), | 432 lfutil.splitstandin(fcother.path()), |
438 lfutil.splitstandin(fcdest.path()))) | 433 lfutil.splitstandin(fcdest.path()))) |
439 else: | 434 else: |
440 repo.ui.status(_('merging %s\n') | 435 repo.ui.status(_('merging %s\n') |
441 % lfutil.splitstandin(fcdest.path())) | 436 % lfutil.splitstandin(fcdest.path())) |
442 | |
443 if fcancestor.path() != fcother.path() and fcother.data() == \ | |
444 fcancestor.data(): | |
445 return 0 | |
446 if fcancestor.path() != fcdest.path() and fcdest.data() == \ | |
447 fcancestor.data(): | |
448 repo.wwrite(fcdest.path(), fcother.data(), fcother.flags()) | |
449 return 0 | |
450 | 437 |
451 if repo.ui.promptchoice(_('largefile %s has a merge conflict\n' | 438 if repo.ui.promptchoice(_('largefile %s has a merge conflict\n' |
452 'keep (l)ocal or take (o)ther?' | 439 'keep (l)ocal or take (o)ther?' |
453 '$$ &Local $$ &Other') % | 440 '$$ &Local $$ &Other') % |
454 lfutil.splitstandin(orig), 0) == 0: | 441 lfutil.splitstandin(orig), 0) == 0: |