Mercurial > hg
changeset 20977:a57dcd11be34
repair: make paths in "_bundle()" relative to ".hg"
This patch makes paths below in "_bundle()" relative to ".hg":
- backup directory ("strip-backup"), and
- bundle file under backup directory
"vfs" is passed to "changegroup.writebundle()" to use relative path
directly.
This patch applies "vfs.join()" on the value returned by "_bundle()",
because the caller expect it to return absolute path.
This will be changed by succeeding patch changing the caller side.
author | FUJIWARA Katsunori <foozy@lares.dti.ne.jp> |
---|---|
date | Sun, 09 Mar 2014 01:03:28 +0900 |
parents | c20f4898631e |
children | 5b58714e97ed |
files | mercurial/repair.py |
diffstat | 1 files changed, 6 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/repair.py Sun Mar 09 01:03:28 2014 +0900 +++ b/mercurial/repair.py Sun Mar 09 01:03:28 2014 +0900 @@ -15,15 +15,16 @@ def _bundle(repo, bases, heads, node, suffix, compress=True): """create a bundle with the specified revisions as a backup""" cg = changegroup.changegroupsubset(repo, bases, heads, 'strip') - backupdir = repo.join("strip-backup") - if not os.path.isdir(backupdir): - os.mkdir(backupdir) - name = os.path.join(backupdir, "%s-%s.hg" % (short(node), suffix)) + backupdir = "strip-backup" + vfs = repo.vfs + if not vfs.isdir(backupdir): + vfs.mkdir(backupdir) + name = "%s/%s-%s.hg" % (backupdir, short(node), suffix) if compress: bundletype = "HG10BZ" else: bundletype = "HG10UN" - return changegroup.writebundle(cg, name, bundletype) + return vfs.join(changegroup.writebundle(cg, name, bundletype, vfs)) def _collectfiles(repo, striprev): """find out the filelogs affected by the strip"""