default_branch for project & fixed project destroy

3-1-stable
Dmitriy Zaporozhets 2011-12-07 23:56:57 +02:00
parent 2552a877df
commit d68ec5e0fb
7 changed files with 18 additions and 6 deletions

View File

@ -61,7 +61,7 @@ class ApplicationController < ActionController::Base
else
@branch = params[:branch].blank? ? nil : params[:branch]
@tag = params[:tag].blank? ? nil : params[:tag]
@ref = @branch || @tag || Repository.default_ref
@ref = @branch || @tag || @project.try(:default_branch) || Repository.default_ref
end
end

View File

@ -158,7 +158,7 @@ class Project < ActiveRecord::Base
end
def root_ref
"master"
default_branch || "master"
end
def public?

View File

@ -49,7 +49,7 @@
%span{ :class => "number" }= @project.snippets.non_expired.count
- if can? current_user, :admin_project, @project
= link_to "Project", edit_project_path(@project), :class => (current_page?(edit_project_path(@project))) ? "current" : nil
= link_to "Admin", edit_project_path(@project), :class => (current_page?(edit_project_path(@project))) ? "current" : nil
.medium-tags{:style => 'padding: 10px 0 0 10px; width: 210px;'}= tag_list @project

View File

@ -29,6 +29,11 @@
%cite.right= "http://#{GIT_HOST["host"]}/"
%td= f.text_field :code, :placeholder => "example"
- unless @project.heads.empty?
%tr
%td= f.label :default_branch, "Default Branch"
%td= f.select(:default_branch, @project.heads.map(&:name), {}, :style => "width:300px;")
%tr
%td= f.label :tag_list
%td= f.text_area :tag_list, :placeholder => "project tags", :style => "height:50px", :id => :tag_field
@ -57,4 +62,5 @@
:javascript
$(function(){
taggifyForm();
$('form #project_default_branch').chosen();
})

View File

@ -0,0 +1,5 @@
class AddDefaultBranchToProject < ActiveRecord::Migration
def change
add_column :projects, :default_branch, :string, :null => false, :default => "master"
end
end

View File

@ -11,7 +11,7 @@
#
# It's strongly recommended to check this file into your version control system.
ActiveRecord::Schema.define(:version => 20111206222316) do
ActiveRecord::Schema.define(:version => 20111207211728) do
create_table "features", :force => true do |t|
t.string "name"
@ -76,9 +76,10 @@ ActiveRecord::Schema.define(:version => 20111206222316) do
t.text "description"
t.datetime "created_at"
t.datetime "updated_at"
t.boolean "private_flag", :default => true, :null => false
t.boolean "private_flag", :default => true, :null => false
t.string "code"
t.integer "owner_id"
t.string "default_branch", :default => "master", :null => false
end
create_table "snippets", :force => true do |t|

View File

@ -42,7 +42,7 @@ module Gitlabhq
end
def destroy_project(project)
`sudo -u git rm -rf #{project.path_to_repo}`
FileUtils.rm_rf(project.path_to_repo)
ga_repo = ::Gitolite::GitoliteAdmin.new(File.join(@local_dir,'gitolite'))
conf = ga_repo.config