Skip to content
Snippets Groups Projects
Commit 8adf6ba8 authored by Florent (HP)'s avatar Florent (HP)
Browse files

Add merged label on branches page

parent cb6ad67f
No related branches found
No related tags found
1 merge request!9545Add merged label on branches page
Loading
Loading
@@ -55,6 +55,7 @@ v 7.14.0 (unreleased)
- Fix bug causing error when the target branch of a symbolic ref was deleted
- Include branch/tag name in archive file and directory name
- Add dropzone upload progress
- Add a label for merged branches on branches page (Florent Baldino)
 
v 7.13.3
- Fix bug causing Bitbucket importer to crash when OAuth application had been removed.
Loading
Loading
Loading
Loading
@@ -364,6 +364,17 @@ class Repository
@root_ref ||= raw_repository.root_ref
end
 
def merged_to_root_ref?(branch_name)
branch_commit = commit(branch_name)
root_ref_commit = commit(root_ref)
if branch_commit
rugged.merge_base(root_ref_commit.id, branch_commit.id) == branch_commit.id
else
nil
end
end
def search_files(query, ref)
offset = 2
args = %W(git grep -i -n --before-context #{offset} --after-context #{offset} #{query} #{ref || root_ref})
Loading
Loading
Loading
Loading
@@ -5,6 +5,11 @@
%strong.str-truncated= branch.name
- if branch.name == @repository.root_ref
%span.label.label-info default
- elsif @repository.merged_to_root_ref? branch.name
%span.label.label-primary.has_tooltip(title="Merged into #{@repository.root_ref}")
%i.fa.fa-check
merged
- if @project.protected_branch? branch.name
%span.label.label-success
%i.fa.fa-lock
Loading
Loading
Loading
Loading
@@ -34,6 +34,26 @@ describe Repository do
end
end
 
describe :merged_to_root_ref? do
context 'merged branch' do
subject { repository.merged_to_root_ref?('improve/awesome') }
it { is_expected.to be_truthy }
end
context 'non merged branch' do
subject { repository.merged_to_root_ref?('fix') }
it { is_expected.to be_falsey }
end
context 'non existent branch' do
subject { repository.merged_to_root_ref?('non_existent_branch') }
it { is_expected.to be_nil }
end
end
describe "search_files" do
let(:results) { repository.search_files('feature', 'master') }
subject { results }
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment