Revert "Merge branch 'improve-merge-requests' into 'master'
This reverts commit4773f38e28
, reversing changes made to0d5d80b735
.
This commit is contained in:
parent
f293d991a4
commit
84727fba96
13 changed files with 160 additions and 154 deletions
|
@ -49,8 +49,10 @@ class @MergeRequestWidget
|
|||
@setMergeButtonClass('btn-danger')
|
||||
|
||||
showCiCoverage: (coverage) ->
|
||||
text = 'Coverage ' + coverage + '%'
|
||||
$('.ci_widget:visible .ci-coverage').text(text)
|
||||
cov_html = $('<span>')
|
||||
cov_html.addClass('ci-coverage')
|
||||
cov_html.text('Coverage ' + coverage + '%')
|
||||
$('.ci_widget:visible').append(cov_html)
|
||||
|
||||
setMergeButtonClass: (css_class) ->
|
||||
$('.accept_merge_request').removeClass("btn-create").addClass(css_class)
|
||||
|
|
|
@ -1,15 +1,9 @@
|
|||
/**
|
||||
* MR -> show: Automerge widget
|
||||
|
||||
/**
|
||||
* MR -> show: Automerge widget
|
||||
*
|
||||
*/
|
||||
.mr-state-widget {
|
||||
background: #FAFAFA;
|
||||
margin-bottom: 20px;
|
||||
color: #666;
|
||||
border: 1px solid #e5e5e5;
|
||||
@include box-shadow(0 1px 1px rgba(0, 0, 0, 0.05));
|
||||
@include border-radius(3px);
|
||||
|
||||
form {
|
||||
margin-bottom: 0;
|
||||
.clearfix {
|
||||
|
@ -26,67 +20,16 @@
|
|||
display: inline-block;
|
||||
margin: 0;
|
||||
margin-left: 20px;
|
||||
padding: 5px;
|
||||
padding: 10px 0;
|
||||
line-height: 20px;
|
||||
font-weight: bold;
|
||||
|
||||
.remove_source_checkbox {
|
||||
margin: 0;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.ci_widget {
|
||||
border-bottom: 1px solid #EEE;
|
||||
|
||||
i {
|
||||
margin-right: 4px;
|
||||
}
|
||||
|
||||
&.ci-success {
|
||||
color: $gl-success;
|
||||
}
|
||||
|
||||
&.ci-skipped {
|
||||
background-color: #eee;
|
||||
color: #888;
|
||||
}
|
||||
|
||||
&.ci-pending,
|
||||
&.ci-running {
|
||||
color: $gl-warning;
|
||||
}
|
||||
|
||||
&.ci-failed,
|
||||
&.ci-canceled,
|
||||
&.ci-error {
|
||||
color: $gl-danger;
|
||||
}
|
||||
}
|
||||
|
||||
.mr-widget-body,
|
||||
.ci_widget,
|
||||
.mr-widget-footer {
|
||||
padding: 15px;
|
||||
}
|
||||
|
||||
.mr-widget-body {
|
||||
h4 {
|
||||
font-weight: bold;
|
||||
margin: 5px 0;
|
||||
}
|
||||
|
||||
p:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.mr-widget-footer {
|
||||
border-top: 1px solid #EEE;
|
||||
}
|
||||
|
||||
.ci-coverage {
|
||||
float: right;
|
||||
}
|
||||
}
|
||||
|
||||
@media(min-width: $screen-sm-max) {
|
||||
|
@ -118,10 +61,23 @@
|
|||
}
|
||||
|
||||
.label-branch {
|
||||
color: #222;
|
||||
@include border-radius(4px);
|
||||
padding: 3px 4px;
|
||||
border: none;
|
||||
background: $hover;
|
||||
color: #333;
|
||||
font-family: $monospace_font;
|
||||
font-weight: bold;
|
||||
font-weight: normal;
|
||||
overflow: hidden;
|
||||
|
||||
.label-project {
|
||||
@include border-radius-left(4px);
|
||||
padding: 3px 4px;
|
||||
background: #279;
|
||||
position: relative;
|
||||
left: -4px;
|
||||
letter-spacing: -1px;
|
||||
}
|
||||
}
|
||||
|
||||
.mr-list {
|
||||
|
@ -168,6 +124,64 @@
|
|||
display: none;
|
||||
}
|
||||
|
||||
.mr-state-widget {
|
||||
font-size: 13px;
|
||||
background: #FAFAFA;
|
||||
margin-bottom: 20px;
|
||||
color: #666;
|
||||
border: 1px solid #e5e5e5;
|
||||
@include box-shadow(0 1px 1px rgba(0, 0, 0, 0.05));
|
||||
@include border-radius(3px);
|
||||
|
||||
.ci_widget {
|
||||
padding: 10px 15px;
|
||||
font-size: 15px;
|
||||
border-bottom: 1px solid #EEE;
|
||||
|
||||
&.ci-success {
|
||||
color: $gl-success;
|
||||
}
|
||||
|
||||
&.ci-skipped {
|
||||
background-color: #eee;
|
||||
color: #888;
|
||||
}
|
||||
|
||||
&.ci-pending,
|
||||
&.ci-running {
|
||||
color: $gl-warning;
|
||||
}
|
||||
|
||||
&.ci-failed,
|
||||
&.ci-canceled,
|
||||
&.ci-error {
|
||||
color: $gl-danger;
|
||||
}
|
||||
}
|
||||
|
||||
.mr-widget-body {
|
||||
padding: 10px 15px;
|
||||
|
||||
h4 {
|
||||
font-weight: bold;
|
||||
margin: 5px 0;
|
||||
}
|
||||
|
||||
p:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.mr-widget-footer {
|
||||
padding: 10px 15px;
|
||||
border-top: 1px solid #EEE;
|
||||
}
|
||||
|
||||
.ci-coverage {
|
||||
float: right;
|
||||
}
|
||||
}
|
||||
|
||||
.merge-request-show-labels {
|
||||
a {
|
||||
margin-right: 5px;
|
||||
|
|
|
@ -61,14 +61,4 @@ module MergeRequestsHelper
|
|||
}
|
||||
)
|
||||
end
|
||||
|
||||
def source_branch_with_namespace(merge_request)
|
||||
if merge_request.for_fork?
|
||||
namespace = link_to(merge_request.source_project_namespace,
|
||||
project_path(merge_request.source_project))
|
||||
namespace + ":#{merge_request.source_branch}"
|
||||
else
|
||||
merge_request.source_branch
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -432,7 +432,7 @@ class MergeRequest < ActiveRecord::Base
|
|||
target_project.repository.fetch_ref(
|
||||
source_project.repository.path_to_repo,
|
||||
"refs/heads/#{source_branch}",
|
||||
"refs/merge-requests/#{iid}/head"
|
||||
"refs/merge-requests/#{id}/head"
|
||||
)
|
||||
end
|
||||
|
||||
|
|
|
@ -161,8 +161,8 @@ class MergeRequestDiff < ActiveRecord::Base
|
|||
def compare_result
|
||||
@compare_result ||=
|
||||
begin
|
||||
# Update ref for merge request
|
||||
merge_request.fetch_ref
|
||||
# Update ref if merge request is from fork
|
||||
merge_request.fetch_ref if merge_request.for_fork?
|
||||
|
||||
# Get latest sha of branch from source project
|
||||
source_sha = merge_request.source_project.commit(source_branch).sha
|
||||
|
|
|
@ -6,25 +6,40 @@
|
|||
= render "projects/merge_requests/show/mr_box"
|
||||
%hr
|
||||
.append-bottom-20
|
||||
- if @merge_request.open?
|
||||
.btn-group.btn-group-sm.pull-right
|
||||
%a.btn.btn-sm.dropdown-toggle{ data: {toggle: :dropdown} }
|
||||
= icon('download')
|
||||
Download as
|
||||
%span.caret
|
||||
%ul.dropdown-menu
|
||||
%li= link_to "Email Patches", merge_request_path(@merge_request, format: :patch)
|
||||
%li= link_to "Plain Diff", merge_request_path(@merge_request, format: :diff)
|
||||
.light
|
||||
%div
|
||||
%span From
|
||||
%span.label-branch #{source_branch_with_namespace(@merge_request)}
|
||||
.slead
|
||||
%span From
|
||||
- if @merge_request.for_fork?
|
||||
%strong.label-branch<
|
||||
- if @merge_request.source_project
|
||||
= link_to @merge_request.source_project_namespace, namespace_project_path(@merge_request.source_project.namespace, @merge_request.source_project)
|
||||
- else
|
||||
\ #{@merge_request.source_project_namespace}
|
||||
\:#{@merge_request.source_branch}
|
||||
%span into
|
||||
%span.label-branch #{@merge_request.target_branch}
|
||||
- if @merge_request.open? && !@merge_request.branch_missing?
|
||||
%div
|
||||
If you want to try or merge this request manually, you can use the
|
||||
= link_to "command line", "#modal_merge_info", class: "how_to_merge_link vlink", title: "How To Merge", "data-toggle" => "modal"
|
||||
%strong.label-branch #{@merge_request.target_project_namespace}:#{@merge_request.target_branch}
|
||||
- else
|
||||
%strong.label-branch #{@merge_request.source_branch}
|
||||
%span into
|
||||
%strong.label-branch #{@merge_request.target_branch}
|
||||
- if @merge_request.open?
|
||||
.btn-group.btn-group-sm.pull-right
|
||||
%a.btn.btn-sm.dropdown-toggle{ data: {toggle: :dropdown} }
|
||||
= icon('download')
|
||||
Download as
|
||||
%span.caret
|
||||
%ul.dropdown-menu
|
||||
%li= link_to "Email Patches", merge_request_path(@merge_request, format: :patch)
|
||||
%li= link_to "Plain Diff", merge_request_path(@merge_request, format: :diff)
|
||||
|
||||
- if @merge_request.open? and @merge_request.source_branch_exists?
|
||||
.append-bottom-20
|
||||
.slead
|
||||
%span
|
||||
Fetch the branch with
|
||||
%strong.label-branch<
|
||||
git fetch
|
||||
\ #{@merge_request.source_project.http_url_to_repo}
|
||||
\ #{@merge_request.source_branch}
|
||||
|
||||
= render "projects/merge_requests/show/how_to_merge"
|
||||
= render "projects/merge_requests/widget/show.html.haml"
|
||||
|
|
|
@ -1 +1 @@
|
|||
= render "projects/commits/commits", project: @merge_request.project
|
||||
= render "projects/commits/commits", project: @merge_request.source_project
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
- if @merge_request_diff.collected?
|
||||
= render "projects/diffs/diffs", diffs: @merge_request.diffs, project: @merge_request.project
|
||||
= render "projects/diffs/diffs", diffs: @merge_request.diffs, project: @merge_request.source_project
|
||||
- elsif @merge_request_diff.empty?
|
||||
.nothing-here-block Nothing to merge from #{@merge_request.source_branch} into #{@merge_request.target_branch}
|
||||
- else
|
||||
|
|
|
@ -1,14 +1,28 @@
|
|||
- if @merge_request.has_ci?
|
||||
.mr-widget-heading
|
||||
- [:success, :skipped, :canceled, :failed, :running, :pending].each do |status|
|
||||
.ci_widget.ci-success{style: "display:none"}
|
||||
= icon("check")
|
||||
%span CI build passed
|
||||
for #{@merge_request.last_commit_short_sha}.
|
||||
= link_to "View build page", ci_build_details_path(@merge_request), :"data-no-turbolink" => "data-no-turbolink"
|
||||
|
||||
.ci_widget.ci-skipped{style: "display:none"}
|
||||
= icon("check")
|
||||
%span CI build skipped
|
||||
for #{@merge_request.last_commit_short_sha}.
|
||||
= link_to "View build page", ci_build_details_path(@merge_request), :"data-no-turbolink" => "data-no-turbolink"
|
||||
|
||||
.ci_widget.ci-failed{style: "display:none"}
|
||||
= icon("times")
|
||||
%span CI build failed
|
||||
for #{@merge_request.last_commit_short_sha}.
|
||||
= link_to "View build page", ci_build_details_path(@merge_request), :"data-no-turbolink" => "data-no-turbolink"
|
||||
|
||||
- [:running, :pending].each do |status|
|
||||
.ci_widget{class: "ci-#{status}", style: "display:none"}
|
||||
- if status == :success
|
||||
= icon("check-circle")
|
||||
- else
|
||||
= icon("circle")
|
||||
= icon("clock-o")
|
||||
%span CI build #{status}
|
||||
for #{@merge_request.last_commit_short_sha}.
|
||||
%span.ci-coverage
|
||||
= link_to "View build page", ci_build_details_path(@merge_request), :"data-no-turbolink" => "data-no-turbolink"
|
||||
|
||||
.ci_widget
|
||||
|
@ -16,12 +30,19 @@
|
|||
Checking for CI status for #{@merge_request.last_commit_short_sha}
|
||||
|
||||
.ci_widget.ci-not_found{style: "display:none"}
|
||||
= icon("times-circle")
|
||||
= icon("times")
|
||||
%span Can not find commit in the CI server
|
||||
for #{@merge_request.last_commit_short_sha}.
|
||||
|
||||
|
||||
.ci_widget.ci-canceled{style: "display:none"}
|
||||
= icon("times")
|
||||
%span CI build canceled
|
||||
for #{@merge_request.last_commit_short_sha}.
|
||||
= link_to "View build page", ci_build_details_path(@merge_request), :"data-no-turbolink" => "data-no-turbolink"
|
||||
|
||||
.ci_widget.ci-error{style: "display:none"}
|
||||
= icon("times-circle")
|
||||
= icon("times")
|
||||
%span Cannot connect to the CI server. Please check your settings and try again.
|
||||
|
||||
:coffeescript
|
||||
|
|
|
@ -18,6 +18,12 @@
|
|||
text: @merge_request.merge_commit_message,
|
||||
rows: 14, hint: true
|
||||
|
||||
%br
|
||||
.light
|
||||
If you want to merge this request manually, you can use the
|
||||
%strong
|
||||
= link_to "command line", "#modal_merge_info", class: "how_to_merge_link vlink", title: "How To Merge", "data-toggle" => "modal"
|
||||
|
||||
:coffeescript
|
||||
$('.accept-mr-form').on 'ajax:before', ->
|
||||
btn = $('.accept_merge_request')
|
||||
|
|
|
@ -1,11 +1,10 @@
|
|||
%h4
|
||||
This merge request contains merge conflicts that must be resolved.
|
||||
|
||||
- if @merge_request.can_be_merged_by?(current_user)
|
||||
%h4
|
||||
This merge request contains merge conflicts that must be resolved.
|
||||
%p
|
||||
You can merge it manually using the
|
||||
%strong
|
||||
= link_to "command line", "#modal_merge_info", class: "how_to_merge_link vlink", title: "How To Merge", "data-toggle" => "modal"
|
||||
- else
|
||||
%p
|
||||
Only those with write access to this repository can merge merge requests.
|
||||
%strong This merge request contains merge conflicts that must be resolved.
|
||||
Only those with write access to this repository can merge merge requests.
|
||||
|
|
|
@ -13,5 +13,4 @@
|
|||
- [Project users](add-user/add-user.md)
|
||||
- [Protected branches](protected_branches.md)
|
||||
- [Web Editor](web_editor.md)
|
||||
- [Merge Requests](merge_requests.md)
|
||||
- ["Work In Progress" Merge Requests](wip_merge_requests.md)
|
||||
|
|
|
@ -1,40 +0,0 @@
|
|||
# Merge Requests
|
||||
|
||||
Merge requests allow you to exchange changes you made to source code
|
||||
|
||||
## Checkout merge requests locally
|
||||
|
||||
Locate the section for your GitLab remote in the `.git/config` file. It looks like this:
|
||||
|
||||
```
|
||||
[remote "origin"]
|
||||
url = https://gitlab.com/gitlab-org/gitlab-ce.git
|
||||
fetch = +refs/heads/*:refs/remotes/origin/*
|
||||
```
|
||||
|
||||
Now add the line `fetch = +refs/merge-requests/*/head:refs/remotes/origin/merge-requests/*` to this section.
|
||||
|
||||
It should looks like this:
|
||||
|
||||
```
|
||||
[remote "origin"]
|
||||
url = https://gitlab.com/gitlab-org/gitlab-ce.git
|
||||
fetch = +refs/heads/*:refs/remotes/origin/*
|
||||
fetch = +refs/merge-requests/*/head:refs/remotes/origin/merge-requests/*
|
||||
```
|
||||
|
||||
Now you can fetch all the merge requests requests:
|
||||
|
||||
```
|
||||
$ git fetch origin
|
||||
From https://gitlab.com/gitlab-org/gitlab-ce.git
|
||||
* [new ref] refs/merge-requests/1/head -> origin/merge-requests/1
|
||||
* [new ref] refs/merge-requests/2/head -> origin/merge-requests/2
|
||||
...
|
||||
```
|
||||
|
||||
To check out a particular merge request:
|
||||
|
||||
```
|
||||
$ git checkout origin/merge-requests/1
|
||||
```
|
Loading…
Reference in a new issue