summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRubén Dávila <rdavila84@gmail.com>2016-03-30 21:50:17 -0500
committerRubén Dávila <rdavila84@gmail.com>2016-03-30 21:50:17 -0500
commite5507fdd74c19345bd91eea5b5b56a83351db8d4 (patch)
treef81a59916b7cd2d79988e93a1ca4fad8f2a89510
parent3efa55dc759a3c126b0632bc451de1a138d63038 (diff)
downloadgitlab-shell-e5507fdd74c19345bd91eea5b5b56a83351db8d4.tar.gz
Add the ability to fetch remote repo without tags.gl_ee_issue_116
When fetching remote repo with tags the new remote tags are mixed in with the local tags (all tags are saved under refs/tags), this affects the UI of the Project given that we're showing up tags of a remote repo.
-rw-r--r--lib/gitlab_projects.rb8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/gitlab_projects.rb b/lib/gitlab_projects.rb
index 11a5a16..0193a18 100644
--- a/lib/gitlab_projects.rb
+++ b/lib/gitlab_projects.rb
@@ -180,11 +180,15 @@ class GitlabProjects
timeout = (ARGV.shift || 120).to_i
# fetch with --force ?
- forced = (ARGV.shift == '--force')
+ forced = ARGV.include?('--force')
+
+ # fetch with --tags or --no-tags
+ tags_option = ARGV.include?('--no-tags') ? '--no-tags' : '--tags'
$logger.info "Fetching remote #{@name} for project #{@project_name}."
- cmd = %W(git --git-dir=#{full_path} fetch #{@name} --tags)
+ cmd = %W(git --git-dir=#{full_path} fetch #{@name})
cmd << '--force' if forced
+ cmd << tags_option
pid = Process.spawn(*cmd)
begin