From 1e545915d4661cbc026b4ccfdfbb1df88d7a7830 Mon Sep 17 00:00:00 2001 From: Ben Boeckel Date: Apr 04 2016 11:48:06 +0000 Subject: pyrpkg: use git remote get-url --push This expands aliases to get the actual URL which is used to push. Signed-off-by: Ben Boeckel --- diff --git a/src/pyrpkg/__init__.py b/src/pyrpkg/__init__.py index 23d1866..7b2d715 100644 --- a/src/pyrpkg/__init__.py +++ b/src/pyrpkg/__init__.py @@ -396,14 +396,18 @@ class Commands(object): def load_push_url(self): """Find the pushurl or url of remote of branch we're on.""" try: - url = self.repo.git.config('--get', 'remote.%s.pushurl' - % self.branch_remote) + url = self.repo.git.remote('get-url', '--push', + self.branch_remote) except git.GitCommandError as e: try: - url = self.repo.git.config('--get', 'remote.%s.url' - % self.branch_remote) + url = self.repo.git.config('--get', 'remote.%s.pushurl' + % self.branch_remote) except git.GitCommandError as e: - raise rpkgError('Unable to find remote push url: %s' % e) + try: + url = self.repo.git.config('--get', 'remote.%s.url' + % self.branch_remote) + except git.GitCommandError as e: + raise rpkgError('Unable to find remote push url: %s' % e) if isinstance(url, unicode): # GitPython >= 1.0 return unicode. It must be encoded to string. self._push_url = url.encode('utf-8')