diff options
-rw-r--r-- | gbp/git/repository.py | 9 | ||||
-rw-r--r-- | tests/test_GitRepository.py | 1 |
2 files changed, 6 insertions, 4 deletions
diff --git a/gbp/git/repository.py b/gbp/git/repository.py index fe405884..42612327 100644 --- a/gbp/git/repository.py +++ b/gbp/git/repository.py @@ -687,17 +687,18 @@ class GitRepository(object): args += [ name, url ] self._git_command("remote", args) - def fetch(self, repo=None): + def fetch(self, repo=None, tags=False): """ Download objects and refs from another repository. @param repo: repository to fetch from @type repo: C{str} """ - args = [ '--quiet' ] - args += [repo] if repo else [] + args = GitArgs('--quiet') + args.add_true(tags, '--tags') + args.add_cond(repo, repo) - self._git_command("fetch", args) + self._git_command("fetch", args.args) def pull(self, repo=None, ff_only=False): """ diff --git a/tests/test_GitRepository.py b/tests/test_GitRepository.py index 7eaae1e3..23f4f997 100644 --- a/tests/test_GitRepository.py +++ b/tests/test_GitRepository.py @@ -424,6 +424,7 @@ def test_fetch(): >>> clone.push_tag('origin', 'tag3') >>> clone.add_remote_repo('foo', repo_dir) >>> clone.fetch('foo') + >>> clone.fetch('foo', tags=True) """ def test_create_bare(): |