Index: git_cl.py |
diff --git a/git_cl.py b/git_cl.py |
index 06594f0404ed534b938239da25437cac45089f70..6e564010d1a47e59752891611b37fbce551a643b 100755 |
--- a/git_cl.py |
+++ b/git_cl.py |
@@ -635,12 +635,17 @@ or verify this branch is set up to track another (via the --track argument to |
return True |
def GetGitBaseUrlFromConfig(self): |
- """Return the configured base URL from branch.<branchname>.baseurl. |
+ """Return the configured base URL from branch.<branchname>.canonical-url. |
Returns None if it is not set. |
""" |
- return RunGit(['config', 'branch.%s.base-url' % self.GetBranch()], |
- error_ok=True).strip() |
+ branch = self.GetBranch() |
+ url = RunGit(['config', 'branch.%s.canonical-url' % branch], |
+ error_ok=True).strip() |
+ if not url: |
+ url = RunGit(['config', 'branch.%s.base-url' % branch], |
+ error_ok=True).strip() |
+ return url |
def GetRemoteUrl(self): |
"""Return the configured remote URL, e.g. 'git://example.org/foo.git/'. |
@@ -1074,6 +1079,13 @@ def LoadCodereviewSettingsFromFile(fileobj): |
RunGit(['config', keyvals['PUSH_URL_CONFIG'], |
keyvals['ORIGIN_URL_CONFIG']]) |
+ if 'CANONICAL_URL' in keyvals: |
+ branchref = RunGit(['symbolic-ref', 'HEAD']).strip() |
+ branch = ShortBranchName(branchref) |
+ RunGit(['config', 'branch.%s.canonical-url' % branch, |
+ keyvals['CANONICAL_URL']], |
+ error_ok=False) |
+ |
def urlretrieve(source, destination): |
"""urllib is broken for SSL connections via a proxy therefore we |