Commit 36cac35b authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets

Dont allow remove of protected branch

Signed-off-by: default avatarDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
parent a9d60b3b
...@@ -44,14 +44,18 @@ module Gitlab ...@@ -44,14 +44,18 @@ module Gitlab
def push_allowed?(user, project, ref, oldrev, newrev, forced_push) def push_allowed?(user, project, ref, oldrev, newrev, forced_push)
if user && user_allowed?(user) if user && user_allowed?(user)
action = if project.protected_branch?(ref) action = if project.protected_branch?(ref)
if forced_push.to_s == 'true' # we dont allow force push to protected branch
:force_push_code_to_protected_branches if forced_push.to_s == 'true'
else :force_push_code_to_protected_branches
:push_code_to_protected_branches # and we dont allow remove of protected branch
end elsif newrev =~ /0000000/
else :remove_protected_branches
:push_code else
end :push_code_to_protected_branches
end
else
:push_code
end
user.can?(action, project) user.can?(action, project)
else else
false false
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment