Commit 9d938fd7 authored by Douwe Maan's avatar Douwe Maan
Browse files

List new commits for newly pushed branch in activity view.

parent dbd347bf
......@@ -2,6 +2,7 @@ Please view this file on the master branch, on stable branches it's out of date.
v 7.10.0 (unreleased)
- Add a service to support external wikis (Hannes Rosenögger)
- List new commits for newly pushed branch in activity view.
v 7.9.0 (unreleased)
- Add HipChat integration documentation (Stan Hu)
......
......@@ -96,7 +96,7 @@ def event_feed_url(event)
end
end
elsif event.push?
if event.push_with_commits?
if event.push_with_commits? && event.md_ref?
if event.commits_count > 1
namespace_project_compare_url(event.project.namespace, event.project,
from: event.commit_from, to:
......
......@@ -247,7 +247,7 @@ def ref_type
end
def push_with_commits?
md_ref? && commits.any? && commit_from && commit_to
!commits.empty? && commit_from && commit_to
end
def last_push_to_non_root?
......
......@@ -21,5 +21,11 @@
%li.commits-stat
- if event.commits_count > 2
%span ... and #{event.commits_count - 2} more commits.
= link_to namespace_project_compare_path(event.project.namespace, event.project, from: event.commit_from, to: event.commit_to) do
%strong Compare → #{truncate_sha(event.commit_from)}...#{truncate_sha(event.commit_to)}
- if event.md_ref?
- from = event.commit_from
- from_label = truncate_sha(from)
- else
- from = event.project.default_branch
- from_label = from
= link_to namespace_project_compare_path(event.project.namespace, event.project, from: from, to: event.commit_to) do
%strong Compare → #{from_label}...#{truncate_sha(event.commit_to)}
......@@ -28,6 +28,12 @@ def build(project, user, oldrev, newrev, ref, commits = [])
# Get latest 20 commits ASC
commits_limited = commits.last(20)
# For performance purposes maximum 20 latest commits
# will be passed as post receive hook data.
commit_attrs = commits_limited.map do |commit|
commit.hook_attrs(project)
end
type = Gitlab::Git.tag_ref?(ref) ? "tag_push" : "push"
# Hash to be passed as post_receive_data
data = {
......@@ -49,17 +55,10 @@ def build(project, user, oldrev, newrev, ref, commits = [])
git_ssh_url: project.ssh_url_to_repo,
visibility_level: project.visibility_level
},
commits: [],
commits: commit_attrs,
total_commits_count: commits_count
}
# For performance purposes maximum 20 latest commits
# will be passed as post receive hook data.
commits_limited.each do |commit|
data[:commits] << commit.hook_attrs(project)
end
data[:commits] = "" if data[:commits].count == 0
data
end
......
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