Mercurial > public > mercurial-scm > hg
diff hgext/lfs/wrapper.py @ 35363:b0ba1539af01
lfs: restore the local blob store after a repo upgrade
This also ends up testing the local extension wrapping for dstrepo during
upgrade, which was fixed in 06987c6971be.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Fri, 08 Dec 2017 00:18:30 -0500 |
parents | 9eb19b13e92a |
children | a7ff4071c8aa |
line wrap: on
line diff
--- a/hgext/lfs/wrapper.py Thu Dec 07 23:44:06 2017 -0500 +++ b/hgext/lfs/wrapper.py Fri Dec 08 00:18:30 2017 -0500 @@ -19,6 +19,8 @@ util, ) +from ..largefiles import lfutil + from . import ( blobstore, pointer, @@ -303,6 +305,17 @@ remoteblob = repo.svfs.lfsremoteblobstore remoteblob.writebatch(pointers, repo.svfs.lfslocalblobstore) +def upgradefinishdatamigration(orig, ui, srcrepo, dstrepo, requirements): + orig(ui, srcrepo, dstrepo, requirements) + + srclfsvfs = srcrepo.svfs.lfslocalblobstore.vfs + dstlfsvfs = dstrepo.svfs.lfslocalblobstore.vfs + + for dirpath, dirs, files in srclfsvfs.walk(): + for oid in files: + srcrepo.ui.write(_('copying lfs blob %s\n') % oid) + lfutil.link(srclfsvfs.join(oid), dstlfsvfs.join(oid)) + def upgraderequirements(orig, repo): reqs = orig(repo) if 'lfs' in repo.requirements: