diff mercurial/archival.py @ 17108:1894dac619de

subrepo: propagate matcher to subrepos when archiving Add a match object to subrepo.archive(). This will allow the -X and -I options to be honored inside subrepos when archiving. They formerly only affect the top level repo.
author Matt Harbison <matt_harbison@yahoo.com>
date Sat, 16 Jun 2012 22:34:06 -0400
parents 51932c835b74
children 72fa4ef2245f 133d13e44544
line wrap: on
line diff
--- a/mercurial/archival.py	Mon Jun 18 22:45:21 2012 -0400
+++ b/mercurial/archival.py	Sat Jun 16 22:34:06 2012 -0400
@@ -7,6 +7,7 @@
 
 from i18n import _
 from node import hex
+import match as matchmod
 import cmdutil
 import scmutil, util, encoding
 import cStringIO, os, tarfile, time, zipfile
@@ -284,6 +285,7 @@
     if subrepos:
         for subpath in ctx.substate:
             sub = ctx.sub(subpath)
-            sub.archive(repo.ui, archiver, prefix)
+            submatch = matchmod.narrowmatcher(subpath, matchfn)
+            sub.archive(repo.ui, archiver, prefix, submatch)
 
     archiver.done()