Show More
@@ -457,3 +457,11 b' def getcurrentheads(repo):' | |||
|
457 | 457 | newheads = repo.branchheads(branch) |
|
458 | 458 | heads = heads + newheads |
|
459 | 459 | return heads |
|
460 | ||
|
461 | def getstandinsstate(repo): | |
|
462 | standins = [] | |
|
463 | matcher = getstandinmatcher(repo) | |
|
464 | for standin in dirstate_walk(repo.dirstate, matcher): | |
|
465 | lfile = splitstandin(standin) | |
|
466 | standins.append((lfile, readstandin(repo, lfile))) | |
|
467 | return standins |
@@ -602,8 +602,20 b' def override_revert(orig, ui, repo, *pat' | |||
|
602 | 602 | wlock.release() |
|
603 | 603 | |
|
604 | 604 | def hg_update(orig, repo, node): |
|
605 | # In order to not waste a lot of extra time during the update largefiles | |
|
606 | # step, we keep track of the state of the standins before and after we | |
|
607 | # call the original update function, and only update the standins that | |
|
608 | # have changed in the hg.update() call | |
|
609 | oldstandins = lfutil.getstandinsstate(repo) | |
|
605 | 610 | result = orig(repo, node) |
|
606 | lfcommands.updatelfiles(repo.ui, repo) | |
|
611 | newstandins = lfutil.getstandinsstate(repo) | |
|
612 | tobeupdated = set(oldstandins).symmetric_difference(set(newstandins)) | |
|
613 | filelist = [] | |
|
614 | for f in tobeupdated: | |
|
615 | if f[0] not in filelist: | |
|
616 | filelist.append(f[0]) | |
|
617 | ||
|
618 | lfcommands.updatelfiles(repo.ui, repo, filelist=filelist, printmessage=True) | |
|
607 | 619 | return result |
|
608 | 620 | |
|
609 | 621 | def hg_clean(orig, repo, node, show_stats=True): |
General Comments 0
You need to be logged in to leave comments.
Login now