diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2012-02-15 22:02:33 +0200 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2012-02-15 22:02:33 +0200 |
commit | 37224dc9c1ee80ba9030b616e2bc87bd96919e09 (patch) | |
tree | 5291abadd8748ea47685c326df4b137d0d6a2194 /app/models/protected_branch.rb | |
parent | 3a9e5a9357b6b0cac2acdefa203136c9b572e102 (diff) | |
download | gitlab-ce-37224dc9c1ee80ba9030b616e2bc87bd96919e09.tar.gz |
ProtectedBranches model, Master permission for repo\n Allow push to protected branch for masters only
Diffstat (limited to 'app/models/protected_branch.rb')
-rw-r--r-- | app/models/protected_branch.rb | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/app/models/protected_branch.rb b/app/models/protected_branch.rb new file mode 100644 index 00000000000..9c2d391d0c1 --- /dev/null +++ b/app/models/protected_branch.rb @@ -0,0 +1,29 @@ +class ProtectedBranch < ActiveRecord::Base + belongs_to :project + validates_presence_of :project_id + validates_presence_of :name + + after_save :update_repository + after_destroy :update_repository + + def update_repository + Gitlabhq::GitHost.system.new.configure do |c| + c.update_project(project.path, project) + end + end + + def commit + project.commit(self.name) + end +end +# == Schema Information +# +# Table name: protected_branches +# +# id :integer not null, primary key +# project_id :integer not null +# name :string(255) not null +# created_at :datetime not null +# updated_at :datetime not null +# + |