Show More
@@ -234,7 +234,7 b' def copytostoreabsolute(repo, file, hash' | |||
|
234 | 234 | util.makedirs(os.path.dirname(storepath(repo, hash))) |
|
235 | 235 | if inusercache(repo.ui, hash): |
|
236 | 236 | link(usercachepath(repo.ui, hash), storepath(repo, hash)) |
|
237 | else: | |
|
237 | elif not getattr(repo, "_isconverting", False): | |
|
238 | 238 | dst = util.atomictempfile(storepath(repo, hash), |
|
239 | 239 | createmode=repo.store.createmode) |
|
240 | 240 | for chunk in util.filechunkiter(open(file, 'rb')): |
@@ -1113,3 +1113,11 b' def overridecat(orig, ui, repo, file1, *' | |||
|
1113 | 1113 | result = orig(ui, repo, file1, *pats, **opts) |
|
1114 | 1114 | return result |
|
1115 | 1115 | return lfcommands.catlfile(repo, file1, ctx.rev(), opts.get('output')) |
|
1116 | ||
|
1117 | def mercurialsinkbefore(orig, sink): | |
|
1118 | sink.repo._isconverting = True | |
|
1119 | orig(sink) | |
|
1120 | ||
|
1121 | def mercurialsinkafter(orig, sink): | |
|
1122 | sink.repo._isconverting = False | |
|
1123 | orig(sink) |
@@ -168,3 +168,10 b' def uisetup(ui):' | |||
|
168 | 168 | if name == 'transplant': |
|
169 | 169 | extensions.wrapcommand(getattr(module, 'cmdtable'), 'transplant', |
|
170 | 170 | overrides.overridetransplant) |
|
171 | if name == 'convert': | |
|
172 | convcmd = getattr(module, 'convcmd') | |
|
173 | hgsink = getattr(convcmd, 'mercurial_sink') | |
|
174 | extensions.wrapfunction(hgsink, 'before', | |
|
175 | overrides.mercurialsinkbefore) | |
|
176 | extensions.wrapfunction(hgsink, 'after', | |
|
177 | overrides.mercurialsinkafter) |
@@ -275,6 +275,9 b' round-trip: converting back to a normal ' | |||
|
275 | 275 | |
|
276 | 276 | $ cd .. |
|
277 | 277 | |
|
278 | Clearing the usercache ensures that commitctx doesn't try to cache largefiles | |
|
279 | from the working dir on a convert. | |
|
280 | $ rm "${USERCACHE}"/* | |
|
278 | 281 | $ hg convert largefiles-repo |
|
279 | 282 | assuming destination largefiles-repo-hg |
|
280 | 283 | initializing destination largefiles-repo-hg repository |
@@ -304,6 +307,9 b' round-trip: converting back to a normal ' | |||
|
304 | 307 | | |
|
305 | 308 | o 0:d4892ec57ce2 add large, normal1 |
|
306 | 309 |
|
|
310 | Verify will fail (for now) if the usercache is purged before converting, since | |
|
311 | largefiles are not cached in the converted repo's local store by the conversion | |
|
312 | process. | |
|
307 | 313 | $ hg -R largefiles-repo-hg verify --large --lfa |
|
308 | 314 | checking changesets |
|
309 | 315 | checking manifests |
@@ -311,7 +317,20 b' round-trip: converting back to a normal ' | |||
|
311 | 317 | checking files |
|
312 | 318 | 8 files, 7 changesets, 12 total revisions |
|
313 | 319 | searching 7 changesets for largefiles |
|
320 | changeset 0:d4892ec57ce2: large missing | |
|
321 | (looked for hash 2e000fa7e85759c7f4c254d4d9c33ef481e459a7) | |
|
322 | changeset 1:334e5237836d: sub/maybelarge.dat missing | |
|
323 | (looked for hash 34e163be8e43c5631d8b92e9c43ab0bf0fa62b9c) | |
|
324 | changeset 2:261ad3f3f037: stuff/maybelarge.dat missing | |
|
325 | (looked for hash 34e163be8e43c5631d8b92e9c43ab0bf0fa62b9c) | |
|
326 | changeset 3:55759520c76f: sub/maybelarge.dat missing | |
|
327 | (looked for hash 76236b6a2c6102826c61af4297dd738fb3b1de38) | |
|
328 | changeset 5:9cc5aa7204f0: stuff/maybelarge.dat missing | |
|
329 | (looked for hash 76236b6a2c6102826c61af4297dd738fb3b1de38) | |
|
330 | changeset 6:17126745edfd: anotherlarge missing | |
|
331 | (looked for hash 3b71f43ff30f4b15b5cd85dd9e95ebc7e84eb5a3) | |
|
314 | 332 | verified existence of 6 revisions of 4 largefiles |
|
333 | [1] | |
|
315 | 334 | $ hg -R largefiles-repo-hg showconfig paths |
|
316 | 335 | |
|
317 | 336 | |
@@ -319,7 +338,7 b" Avoid a traceback if a largefile isn't a" | |||
|
319 | 338 | |
|
320 | 339 | Ensure the largefile can be cached in the source if necessary |
|
321 | 340 | $ hg clone -U largefiles-repo issue3519 |
|
322 | $ rm "${USERCACHE}"/* | |
|
341 | $ rm -f "${USERCACHE}"/* | |
|
323 | 342 | $ hg lfconvert --to-normal issue3519 normalized3519 |
|
324 | 343 | initializing destination normalized3519 |
|
325 | 344 |
General Comments 0
You need to be logged in to leave comments.
Login now