Show tags in commit view
This commit is contained in:
parent
ada6c6080b
commit
8243eb3f0e
|
@ -11,7 +11,7 @@ v 7.8.0
|
||||||
-
|
-
|
||||||
-
|
-
|
||||||
-
|
-
|
||||||
-
|
- Show tags in commit view (Hannes Rosenögger)
|
||||||
-
|
-
|
||||||
-
|
-
|
||||||
-
|
-
|
||||||
|
|
|
@ -12,6 +12,7 @@ class Projects::CommitController < Projects::ApplicationController
|
||||||
|
|
||||||
@line_notes = @project.notes.for_commit_id(commit.id).inline
|
@line_notes = @project.notes.for_commit_id(commit.id).inline
|
||||||
@branches = @project.repository.branch_names_contains(commit.id)
|
@branches = @project.repository.branch_names_contains(commit.id)
|
||||||
|
@tags = @project.repository.tag_names_contains(commit.id)
|
||||||
@diffs = @commit.diffs
|
@diffs = @commit.diffs
|
||||||
@note = @project.build_commit_note(commit)
|
@note = @project.build_commit_note(commit)
|
||||||
@notes_count = @project.notes.for_commit_id(commit.id).count
|
@notes_count = @project.notes.for_commit_id(commit.id).count
|
||||||
|
|
|
@ -65,6 +65,12 @@ module CommitsHelper
|
||||||
branches.sort.map { |branch| link_to(branch, project_tree_path(project, branch)) }.join(", ").html_safe
|
branches.sort.map { |branch| link_to(branch, project_tree_path(project, branch)) }.join(", ").html_safe
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Returns the sorted links to tags, separated by a comma
|
||||||
|
def commit_tags_links(project, tags)
|
||||||
|
sorted = VersionSorter.rsort(tags)
|
||||||
|
sorted.map { |tag| link_to(tag, project_commits_path(project, project.repository.find_tag(tag).name)) }.join(", ").html_safe
|
||||||
|
end
|
||||||
|
|
||||||
def link_to_browse_code(project, commit)
|
def link_to_browse_code(project, commit)
|
||||||
if current_controller?(:projects, :commits)
|
if current_controller?(:projects, :commits)
|
||||||
if @repo.blob_at(commit.id, @path)
|
if @repo.blob_at(commit.id, @path)
|
||||||
|
|
|
@ -312,4 +312,21 @@ class Repository
|
||||||
[]
|
[]
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def tag_names_contains(sha)
|
||||||
|
args = %W(git tag --contains #{sha})
|
||||||
|
names = Gitlab::Popen.popen(args, path_to_repo).first
|
||||||
|
|
||||||
|
if names.respond_to?(:split)
|
||||||
|
names = names.split("\n").map(&:strip)
|
||||||
|
|
||||||
|
names.each do |name|
|
||||||
|
name.slice! '* '
|
||||||
|
end
|
||||||
|
|
||||||
|
names
|
||||||
|
else
|
||||||
|
[]
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -50,6 +50,13 @@
|
||||||
%span.js-details-content.hide
|
%span.js-details-content.hide
|
||||||
= commit_branches_links(@project, @branches)
|
= commit_branches_links(@project, @branches)
|
||||||
|
|
||||||
|
- if @tags.any?
|
||||||
|
.commit-info-row
|
||||||
|
%span.cgray
|
||||||
|
Tags:
|
||||||
|
%span
|
||||||
|
= commit_tags_links(@project, @tags)
|
||||||
|
|
||||||
.commit-box
|
.commit-box
|
||||||
%h3.commit-title
|
%h3.commit-title
|
||||||
= gfm escape_once(@commit.title)
|
= gfm escape_once(@commit.title)
|
||||||
|
|
Loading…
Reference in New Issue