[PATCH 2 of 5] largefiles: fix the directory structure when archiving a subrepo in a subrepo

Matt Harbison matt_harbison at yahoo.com
Tue Jun 19 23:45:30 CDT 2012


# HG changeset patch
# User Matt Harbison <matt_harbison at yahoo.com>
# Date 1340074971 14400
# Node ID 0588cf50d6e8b4c06d4263418ef3b1dcc87a2bf8
# Parent  6f8473232a828efca13bac418e407e505801f55b
largefiles: fix the directory structure when archiving a subrepo in a subrepo

Previously, a repo consisting of main/sub/subsub archived sub and subsub as
siblings under main.

diff --git a/hgext/largefiles/overrides.py b/hgext/largefiles/overrides.py
--- a/hgext/largefiles/overrides.py
+++ b/hgext/largefiles/overrides.py
@@ -850,7 +850,7 @@
 
     for subpath in ctx.substate:
         sub = ctx.sub(subpath)
-        sub.archive(ui, archiver, prefix)
+        sub.archive(ui, archiver, os.path.join(prefix, repo._path) + '/')
 
 # If a largefile is modified, the change is not reflected in its
 # standin until a commit. cmdutil.bailifchanged() raises an exception
diff --git a/tests/test-subrepo-deep-nested-change.t b/tests/test-subrepo-deep-nested-change.t
--- a/tests/test-subrepo-deep-nested-change.t
+++ b/tests/test-subrepo-deep-nested-change.t
@@ -125,8 +125,8 @@
   ../archive_lf/sub1/.hgsub
   ../archive_lf/sub1/.hgsubstate
   ../archive_lf/sub1/sub1
-  ../archive_lf/sub2
-  ../archive_lf/sub2/large.bin
-  ../archive_lf/sub2/sub2
+  ../archive_lf/sub1/sub2
+  ../archive_lf/sub1/sub2/large.bin
+  ../archive_lf/sub1/sub2/sub2
 
   $ cd ..


More information about the Mercurial-devel mailing list