diff options
author | James E. Blair <jeblair@redhat.com> | 2016-07-29 10:38:29 -0700 |
---|---|---|
committer | James E. Blair <jeblair@redhat.com> | 2016-07-29 10:38:29 -0700 |
commit | 84c4f940000f731265416c7c0e4b482cd1a713da (patch) | |
tree | 579a5f50dc4fa01f64d240d5e674fc530ce6d909 /zuul/merger | |
parent | 176431ec1488fbde93c953972f639b8a31d173c8 (diff) | |
download | zuul-84c4f940000f731265416c7c0e4b482cd1a713da.tar.gz |
Cloner: correct fetch on pre-1.9 git2.5.0
Commit 6c54b531a36644d53ae054d3fdf846fb2e538677 changed the cloner
to use 'fetch --tags' instead of update, however, 'fetch --tags'
does not actually update heads before git version 1.9. So if we
are using old versions of git, run both commands so that we get
persistent behavior.
Change-Id: I8ea8ac2c6a8384845a3310da63974afc3279564f
Diffstat (limited to 'zuul/merger')
-rw-r--r-- | zuul/merger/merger.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/zuul/merger/merger.py b/zuul/merger/merger.py index 94933dec5..0c9f168ad 100644 --- a/zuul/merger/merger.py +++ b/zuul/merger/merger.py @@ -182,6 +182,13 @@ class Repo(object): repo = self.createRepoObject() self.log.debug("Updating repository %s" % self.local_path) origin = repo.remotes.origin + if repo.git.version_info[:2] < (1, 9): + # Before 1.9, 'git fetch --tags' did not include the + # behavior covered by 'git --fetch', so we run both + # commands in that case. Starting with 1.9, 'git fetch + # --tags' is all that is necessary. See + # https://github.com/git/git/blob/master/Documentation/RelNotes/1.9.0.txt#L18-L20 + origin.fetch() origin.fetch(tags=True) |