summaryrefslogtreecommitdiffstats
path: root/project.py
diff options
context:
space:
mode:
Diffstat (limited to 'project.py')
-rwxr-xr-xproject.py18
1 files changed, 13 insertions, 5 deletions
diff --git a/project.py b/project.py
index 67d3bb20..9702e9da 100755
--- a/project.py
+++ b/project.py
@@ -1226,7 +1226,8 @@ class Project(object):
1226 archive=False, 1226 archive=False,
1227 optimized_fetch=False, 1227 optimized_fetch=False,
1228 prune=False, 1228 prune=False,
1229 submodules=False): 1229 submodules=False,
1230 clone_filter=None):
1230 """Perform only the network IO portion of the sync process. 1231 """Perform only the network IO portion of the sync process.
1231 Local working directory/branch state is not affected. 1232 Local working directory/branch state is not affected.
1232 """ 1233 """
@@ -1309,7 +1310,8 @@ class Project(object):
1309 not self._RemoteFetch(initial=is_new, quiet=quiet, alt_dir=alt_dir, 1310 not self._RemoteFetch(initial=is_new, quiet=quiet, alt_dir=alt_dir,
1310 current_branch_only=current_branch_only, 1311 current_branch_only=current_branch_only,
1311 no_tags=no_tags, prune=prune, depth=depth, 1312 no_tags=no_tags, prune=prune, depth=depth,
1312 submodules=submodules, force_sync=force_sync)): 1313 submodules=submodules, force_sync=force_sync,
1314 clone_filter=clone_filter)):
1313 return False 1315 return False
1314 1316
1315 mp = self.manifest.manifestProject 1317 mp = self.manifest.manifestProject
@@ -1959,7 +1961,8 @@ class Project(object):
1959 prune=False, 1961 prune=False,
1960 depth=None, 1962 depth=None,
1961 submodules=False, 1963 submodules=False,
1962 force_sync=False): 1964 force_sync=False,
1965 clone_filter=None):
1963 1966
1964 is_sha1 = False 1967 is_sha1 = False
1965 tag_name = None 1968 tag_name = None
@@ -2050,6 +2053,11 @@ class Project(object):
2050 2053
2051 cmd = ['fetch'] 2054 cmd = ['fetch']
2052 2055
2056 if clone_filter:
2057 git_require((2, 19, 0), fail=True, msg='partial clones')
2058 cmd.append('--filter=%s' % clone_filter)
2059 self.config.SetString('extensions.partialclone', self.remote.name)
2060
2053 if depth: 2061 if depth:
2054 cmd.append('--depth=%s' % depth) 2062 cmd.append('--depth=%s' % depth)
2055 else: 2063 else:
@@ -2150,12 +2158,12 @@ class Project(object):
2150 return self._RemoteFetch(name=name, 2158 return self._RemoteFetch(name=name,
2151 current_branch_only=current_branch_only, 2159 current_branch_only=current_branch_only,
2152 initial=False, quiet=quiet, alt_dir=alt_dir, 2160 initial=False, quiet=quiet, alt_dir=alt_dir,
2153 depth=None) 2161 depth=None, clone_filter=clone_filter)
2154 else: 2162 else:
2155 # Avoid infinite recursion: sync all branches with depth set to None 2163 # Avoid infinite recursion: sync all branches with depth set to None
2156 return self._RemoteFetch(name=name, current_branch_only=False, 2164 return self._RemoteFetch(name=name, current_branch_only=False,
2157 initial=False, quiet=quiet, alt_dir=alt_dir, 2165 initial=False, quiet=quiet, alt_dir=alt_dir,
2158 depth=None) 2166 depth=None, clone_filter=clone_filter)
2159 2167
2160 return ok 2168 return ok
2161 2169