##// END OF EJS Templates
tests: glob over line number...
tests: glob over line number Differential Revision: https://phab.mercurial-scm.org/D2199

File last commit:

r36096:a2a6e724 default
r36176:80274276 default
Show More
narrowcopies.py
35 lines | 1.1 KiB | text/x-python | PythonLexer
# narrowcopies.py - extensions to mercurial copies module to support narrow
# clones
#
# Copyright 2017 Google, Inc.
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
from __future__ import absolute_import
from mercurial import (
copies,
extensions,
util,
)
def setup(repo):
def _computeforwardmissing(orig, a, b, match=None):
missing = orig(a, b, match)
if util.safehasattr(repo, 'narrowmatch'):
narrowmatch = repo.narrowmatch()
missing = filter(narrowmatch, missing)
return missing
def _checkcopies(orig, srcctx, dstctx, f, base, tca, remotebase, limit,
data):
if util.safehasattr(repo, 'narrowmatch'):
narrowmatch = repo.narrowmatch()
if not narrowmatch(f):
return
orig(srcctx, dstctx, f, base, tca, remotebase, limit, data)
extensions.wrapfunction(copies, '_computeforwardmissing',
_computeforwardmissing)
extensions.wrapfunction(copies, '_checkcopies', _checkcopies)