##// END OF EJS Templates
largefiles: add --all-largefiles flag to pull
Na'Tosha Bard -
r16692:b9969574 default
parent child Browse files
Show More
@@ -651,6 +651,7 b' def hgmerge(orig, repo, node, force=None'
651 651 # take some extra care so that the largefiles are correctly updated in the
652 652 # working copy
653 653 def overridepull(orig, ui, repo, source=None, **opts):
654 revsprepull = len(repo)
654 655 if opts.get('rebase', False):
655 656 repo._isrebasing = True
656 657 try:
@@ -660,7 +661,6 b' def overridepull(orig, ui, repo, source='
660 661 'the update flag\n')
661 662 del opts['rebase']
662 663 cmdutil.bailifchanged(repo)
663 revsprepull = len(repo)
664 664 origpostincoming = commands.postincoming
665 665 def _dummy(*args, **kwargs):
666 666 pass
@@ -695,6 +695,12 b' def overridepull(orig, ui, repo, source='
695 695 (cached, missing) = lfcommands.cachelfiles(ui, repo, head)
696 696 numcached += len(cached)
697 697 ui.status(_("%d largefiles cached\n") % numcached)
698 if opts.get('all_largefiles'):
699 revspostpull = len(repo)
700 revs = []
701 for rev in xrange(revsprepull + 1, revspostpull):
702 revs.append(repo[rev].rev())
703 lfcommands.downloadlfiles(ui, repo, revs)
698 704 return result
699 705
700 706 def overrideclone(orig, ui, source, dest=None, **opts):
@@ -70,6 +70,9 b' def uisetup(ui):'
70 70 overrides.overrideupdate)
71 71 entry = extensions.wrapcommand(commands.table, 'pull',
72 72 overrides.overridepull)
73 pullopt = [('', 'all-largefiles', None,
74 _('download all pulled versions of largefiles'))]
75 entry[1].extend(pullopt)
73 76 entry = extensions.wrapcommand(commands.table, 'clone',
74 77 overrides.overrideclone)
75 78 cloneopt = [('', 'all-largefiles', None,
@@ -444,6 +444,33 b' Test cloning with --all-largefiles flag'
444 444 3 largefiles updated, 0 removed
445 445 8 additional largefiles cached
446 446
447 Test pulling with --all-largefiles flag
448
449 $ rm -Rf a-backup
450 $ hg clone -r 1 a a-backup
451 adding changesets
452 adding manifests
453 adding file changes
454 added 2 changesets with 8 changes to 4 files
455 updating to branch default
456 4 files updated, 0 files merged, 0 files removed, 0 files unresolved
457 getting changed largefiles
458 2 largefiles updated, 0 removed
459 $ rm -Rf ${USERCACHE}/*
460 $ cd a-backup
461 $ hg pull --all-largefiles
462 pulling from $TESTTMP/a
463 searching for changes
464 adding changesets
465 adding manifests
466 adding file changes
467 added 6 changesets with 16 changes to 8 files
468 (run 'hg update' to get a working copy)
469 caching new largefiles
470 3 largefiles cached
471 3 additional largefiles cached
472 $ cd ..
473
447 474 Rebasing between two repositories does not revert largefiles to old
448 475 revisions (this was a very bad bug that took a lot of work to fix).
449 476
General Comments 0
You need to be logged in to leave comments. Login now