From: Guido Günther Date: Mon, 24 Oct 2011 15:20:19 +0000 (+0200) Subject: Add GitRepository.add_remote_repo() X-Git-Tag: debian/0.6.0_git20111202~78 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=02efee70bf88c2c87886efa6aad57bad924a508e;p=tools%2Fgit-buildpackage.git Add GitRepository.add_remote_repo() --- diff --git a/gbp-create-remote-repo b/gbp-create-remote-repo index fa105d1..84bac66 100755 --- a/gbp-create-remote-repo +++ b/gbp-create-remote-repo @@ -131,9 +131,7 @@ def read_yn(): def setup_branch_tracking(repo, remote, branches): - gitRemoteAdd = GitCommand('remote', ['add']) - gitRemoteAdd([remote['name'], remote['url']]) - repo.fetch(remote['name']) + repo.add_remote_repo(name=remote['name'], url=remote['url'], fetch=True) gitTrackRemote = GitCommand('branch', ['--set-upstream']) for branch in branches: gitTrackRemote(['%s' % branch, '%s/%s' % (remote['name'], branch)]) diff --git a/gbp/git.py b/gbp/git.py index a7b5fba..41b83c3 100644 --- a/gbp/git.py +++ b/gbp/git.py @@ -710,6 +710,24 @@ class GitRepository(object): else: return False + def add_remote_repo(self, name, url, tags=True, fetch=False): + """ + Add a tracked remote repository + + @param name: the name to use for the remote + @type name: string + @param url: the url to add + @type url: string + @param tags: whether to fetch tags + @type tags: bool + @param fetch: whether to fetch immediately from the remote side + @type fetch: bool + """ + args = [ "add" ] + args += [ '--tags' ] if tags else [ '--no-tags'] + args += [ '--fetch' ] if fetch else [] + args += [ name, url ] + self._git_command("remote", args) def add_files(self, paths, force=False, index_file=None, work_tree=None): """