Show More
@@ -375,7 +375,15 b' def cachelfiles(ui, repo, node):' | |||
|
375 | 375 | toget = [] |
|
376 | 376 | |
|
377 | 377 | for lfile in lfiles: |
|
378 | expectedhash = repo[node][lfutil.standin(lfile)].data().strip() | |
|
378 | # If we are mid-merge, then we have to trust the standin that is in the | |
|
379 | # working copy to have the correct hashvalue. This is because the | |
|
380 | # original hg.merge() already updated the standin as part of the normal | |
|
381 | # merge process -- we just have to udpate the largefile to match. | |
|
382 | if getattr(repo, "_ismerging", False): | |
|
383 | expectedhash = lfutil.readstandin(repo, lfile) | |
|
384 | else: | |
|
385 | expectedhash = repo[node][lfutil.standin(lfile)].data().strip() | |
|
386 | ||
|
379 | 387 | # if it exists and its hash matches, it might have been locally |
|
380 | 388 | # modified before updating and the user chose 'local'. in this case, |
|
381 | 389 | # it will not be in any store, so don't look for it. |
@@ -612,8 +612,15 b' def hg_clean(orig, repo, node, show_stat' | |||
|
612 | 612 | return result |
|
613 | 613 | |
|
614 | 614 | def hg_merge(orig, repo, node, force=None, remind=True): |
|
615 | result = orig(repo, node, force, remind) | |
|
616 | lfcommands.updatelfiles(repo.ui, repo) | |
|
615 | # Mark the repo as being in the middle of a merge, so that | |
|
616 | # updatelfiles() will know that it needs to trust the standins in | |
|
617 | # the working copy, not in the standins in the current node | |
|
618 | repo._ismerging = True | |
|
619 | try: | |
|
620 | result = orig(repo, node, force, remind) | |
|
621 | lfcommands.updatelfiles(repo.ui, repo) | |
|
622 | finally: | |
|
623 | repo._ismerging = False | |
|
617 | 624 | return result |
|
618 | 625 | |
|
619 | 626 | # When we rebase a repository with remotely changed largefiles, we need to |
General Comments 0
You need to be logged in to leave comments.
Login now