Index: gclient_scm.py |
diff --git a/gclient_scm.py b/gclient_scm.py |
index 211aa473792fa4d218c6ab8cddc09b96bc837a99..00013465859c7960e34cc4126bef3cf7a13c7d34 100644 |
--- a/gclient_scm.py |
+++ b/gclient_scm.py |
@@ -500,6 +500,14 @@ class GitWrapper(SCMWrapper): |
scm.GIT.IsGitSvn(cwd=self.checkout_path)): |
local_head = scm.GIT.GetGitSvnHeadRev(cwd=self.checkout_path) |
if not local_head or local_head < int(rev): |
+ try: |
+ logging.debug('Looking for git-svn configuration optimizations.') |
+ if scm.GIT.Capture(['config', '--get', 'svn-remote.svn.fetch'], |
+ cwd=self.checkout_path): |
+ scm.GIT.Capture(['fetch'], cwd=self.checkout_path) |
+ except subprocess2.CalledProcessError: |
+ logging.debug('git config --get svn-remote.svn.fetch failed, ' |
+ 'ignoring possible optimization.') |
if options.verbose: |
print('Running git svn fetch. This might take a while.\n') |
scm.GIT.Capture(['svn', 'fetch'], cwd=self.checkout_path) |