--- a/mercurial/narrowspec.py Sat Aug 04 23:15:06 2018 -0700
+++ b/mercurial/narrowspec.py Fri Aug 03 11:09:41 2018 -0700
@@ -13,6 +13,7 @@
from . import (
error,
match as matchmod,
+ repository,
sparse,
util,
)
@@ -129,15 +130,22 @@
spec = format(includepats, excludepats)
repo.vfs.write(FILENAME, spec)
-def savebackup(vfs, backupname):
+def savebackup(repo, backupname):
+ if repository.NARROW_REQUIREMENT not in repo.requirements:
+ return
+ vfs = repo.vfs
vfs.tryunlink(backupname)
util.copyfile(vfs.join(FILENAME), vfs.join(backupname), hardlink=True)
-def restorebackup(vfs, backupname):
- vfs.rename(backupname, FILENAME, checkambig=True)
+def restorebackup(repo, backupname):
+ if repository.NARROW_REQUIREMENT not in repo.requirements:
+ return
+ repo.vfs.rename(backupname, FILENAME, checkambig=True)
-def clearbackup(vfs, backupname):
- vfs.unlink(backupname)
+def clearbackup(repo, backupname):
+ if repository.NARROW_REQUIREMENT not in repo.requirements:
+ return
+ repo.vfs.unlink(backupname)
def restrictpatterns(req_includes, req_excludes, repo_includes, repo_excludes):
r""" Restricts the patterns according to repo settings,