From 36d61cd82f15e0b90cd56be44b22011ff422c9c1 Mon Sep 17 00:00:00 2001 From: huang Date: Mon, 2 Nov 2015 17:36:45 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=8E=86=E5=8F=B2=E8=AE=B0?= =?UTF-8?q?=E5=BD=95=E8=BF=81=E7=A7=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/repositories_controller.rb | 18 ++++++------------ lib/tasks/update_rep_if_fault.rake | 16 ++++++++++++++++ 2 files changed, 22 insertions(+), 12 deletions(-) create mode 100644 lib/tasks/update_rep_if_fault.rake diff --git a/app/controllers/repositories_controller.rb b/app/controllers/repositories_controller.rb index 42e097180..0acf75c62 100644 --- a/app/controllers/repositories_controller.rb +++ b/app/controllers/repositories_controller.rb @@ -215,11 +215,11 @@ update end end - unless @repository.gitlab? - # redirect_to to_gitlab_project_repository_path(@project, @repository) - render :to_gitlab - return - end + # unless @repository.gitlab? + # # redirect_to to_gitlab_project_repository_path(@project, @repository) + # render :to_gitlab + # return + # end #if( !User.current.member_of?(@project) || @project.hidden_repo) @repository.fetch_changesets if Setting.autofetch_changesets? && @path.empty? @@ -255,13 +255,7 @@ update if @repository.type.to_s == "Repository::Gitlab" @repos_url = gitlab_address.to_s+"/"+@project.owner.to_s+"/"+@repository.identifier+"."+"git" else - # 默认选择历史版本库情况 - rep = Repository.where("project_id =? and type =?", @project, "Repository::Gitlab") - unless rep.blank? - @repos_url = gitlab_address.to_s+"/"+@project.owner.to_s+"/"+rep.identifier+"."+"git" - else - @repos_url = "http://"+@repository.login.to_s+"_"+@repository.identifier.to_s+"@"+ip.to_s + @repository.url.slice(project_path_cut, @repository.url.length).to_s - end + @repos_url = "http://"+@repository.login.to_s+"_"+@repository.identifier.to_s+"@"+ip.to_s + @repository.url.slice(project_path_cut, @repository.url.length).to_s end if @course_tag == 1 render :action => 'show', :layout => 'base_courses' diff --git a/lib/tasks/update_rep_if_fault.rake b/lib/tasks/update_rep_if_fault.rake new file mode 100644 index 000000000..5353c7569 --- /dev/null +++ b/lib/tasks/update_rep_if_fault.rake @@ -0,0 +1,16 @@ +#coding=utf-8 + +namespace :rep_fault do + desc "update fault rep" + task :rep_update => :environment do + Project.all.each do |project| + if project.repositories.count > 0 + unless Repository.where("project_id =? and type = ?",project, "Repository::Gitlab").blank? + project.repositories.each do |repository| + repository.update_attributes(:is_default => true) + end + end + end + end + end +end \ No newline at end of file