Non-destructive editing of git cache config.
R=agable@chromium.org,iannucci@chromium.org
BUG=
Review URL: https://codereview.chromium.org/485663003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@290665 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/git_cache.py b/git_cache.py
index 7ebe580..d366864 100755
--- a/git_cache.py
+++ b/git_cache.py
@@ -243,14 +243,18 @@
self.RunGit(['config', 'remote.origin.url', self.url], cwd=cwd)
self.RunGit(['config', '--replace-all', 'remote.origin.fetch',
- '+refs/heads/*:refs/heads/*'], cwd=cwd)
+ '+refs/heads/*:refs/heads/*', r'\+refs/heads/\*:.*'], cwd=cwd)
for ref in self.refs:
ref = ref.lstrip('+').rstrip('/')
if ref.startswith('refs/'):
refspec = '+%s:%s' % (ref, ref)
+ regex = r'\+%s:.*' % ref.replace('*', r'\*')
else:
refspec = '+refs/%s/*:refs/%s/*' % (ref, ref)
- self.RunGit(['config', '--add', 'remote.origin.fetch', refspec], cwd=cwd)
+ regex = r'\+refs/heads/%s:.*' % ref.replace('*', r'\*')
+ self.RunGit(
+ ['config', '--replace-all', 'remote.origin.fetch', refspec, regex],
+ cwd=cwd)
def bootstrap_repo(self, directory):
"""Bootstrap the repo from Google Stroage if possible.