diff options
author | Jonathan Schoeffling <jonathan.schoeffling@lmco.com> | 2015-06-14 18:04:20 -0400 |
---|---|---|
committer | Michael Chmielewski <code@mikec.123mail.org> | 2015-10-28 22:34:39 -0400 |
commit | 5a5069969ce8e9184e36abbb7623bf474d5869e9 (patch) | |
tree | ad20f6d4f79b67a26a6237e95e37b1af42517970 /lib/gitlab/project_search_results.rb | |
parent | 8c9e1df98eb45e3305ab5badc6727580e84d36e0 (diff) | |
download | gitlab-ce-5a5069969ce8e9184e36abbb7623bf474d5869e9.tar.gz |
Add support for searching commit log messages
Include the log messages of recent commits in project-level search
results, providing functionality similar to 'git log --grep'.
Update repository model rspec tests to validate the output of
Repository#commits_with_log_matching.
Diffstat (limited to 'lib/gitlab/project_search_results.rb')
-rw-r--r-- | lib/gitlab/project_search_results.rb | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/lib/gitlab/project_search_results.rb b/lib/gitlab/project_search_results.rb index 0a2be605af9..3bf98699bcb 100644 --- a/lib/gitlab/project_search_results.rb +++ b/lib/gitlab/project_search_results.rb @@ -20,6 +20,8 @@ module Gitlab Kaminari.paginate_array(blobs).page(page).per(per_page) when 'wiki_blobs' Kaminari.paginate_array(wiki_blobs).page(page).per(per_page) + when 'commits' + Kaminari.paginate_array(commits).page(page).per(per_page) else super end @@ -27,7 +29,7 @@ module Gitlab def total_count @total_count ||= issues_count + merge_requests_count + blobs_count + - notes_count + wiki_blobs_count + notes_count + wiki_blobs_count + commits_count end def blobs_count @@ -42,6 +44,10 @@ module Gitlab @wiki_blobs_count ||= wiki_blobs.count end + def commits_count + @commits_count ||= commits.count + end + private def blobs @@ -70,6 +76,10 @@ module Gitlab Note.where(project_id: limit_project_ids).user.search(query).order('updated_at DESC') end + def commits + project.repository.commits_with_log_matching(query) + end + def limit_project_ids [project.id] end |