51 lines
2.1 KiB
Text
51 lines
2.1 KiB
Text
|
%h3.page-title Protected branches
|
||
|
%p.light This ability allows to keep stable branches secured and force code review before merge to protected branches
|
||
|
%hr
|
||
|
|
||
|
.bs-callout.bs-callout-info
|
||
|
%p Protected branches designed to
|
||
|
%ul
|
||
|
%li prevent push for all except #{link_to "masters", help_page_path("permissions", "permissions"), class: "vlink"}
|
||
|
%li prevent branch from force push
|
||
|
%li prevent branch from removal
|
||
|
%p Read more about project permissions #{link_to "here", help_page_path("permissions", "permissions"), class: "underlined-link"}
|
||
|
|
||
|
- if can? current_user, :admin_project, @project
|
||
|
= form_for [@project, @protected_branch], html: { class: 'form-horizontal' } do |f|
|
||
|
-if @protected_branch.errors.any?
|
||
|
.alert.alert-danger
|
||
|
%ul
|
||
|
- @protected_branch.errors.full_messages.each do |msg|
|
||
|
%li= msg
|
||
|
|
||
|
.form-group
|
||
|
= f.label :name, "Branch", class: 'control-label'
|
||
|
.col-sm-10
|
||
|
= f.select(:name, @project.open_branches.map { |br| [br.name, br.name] } , {include_blank: "Select branch"}, {class: "select2"})
|
||
|
.form-actions
|
||
|
= f.submit 'Protect', class: "btn-create btn"
|
||
|
- unless @branches.empty?
|
||
|
%h5 Already Protected:
|
||
|
%ul.bordered-list.protected-branches-list
|
||
|
- @branches.each do |branch|
|
||
|
%li
|
||
|
%h4
|
||
|
= link_to project_commits_path(@project, branch.name) do
|
||
|
%strong= branch.name
|
||
|
- if @project.root_ref?(branch.name)
|
||
|
%span.label.label-info default
|
||
|
%span.label.label-success
|
||
|
%i.icon-lock
|
||
|
.pull-right
|
||
|
- if can? current_user, :admin_project, @project
|
||
|
= link_to 'Unprotect', [@project, branch], data: { confirm: 'Branch will be writable for developers. Are you sure?' }, method: :delete, class: "btn btn-remove btn-small"
|
||
|
|
||
|
- if commit = branch.commit
|
||
|
= link_to project_commit_path(@project, commit.id), class: 'commit_short_id' do
|
||
|
= commit.short_id
|
||
|
%span.light
|
||
|
= gfm escape_once(truncate(commit.title, length: 40))
|
||
|
#{time_ago_with_tooltip(commit.committed_date)}
|
||
|
- else
|
||
|
(branch was removed from repository)
|