Commit 5baac66992a1a4e3df4f9873632a9a083e52b92c
1 parent
63e532ef
Exists in
master
and in
4 other branches
More info (like 10 branches, 5 tags) at project show page
Showing
2 changed files
with
41 additions
and
5 deletions
Show diff stats
app/models/repository.rb
| ... | ... | @@ -33,6 +33,18 @@ class Repository |
| 33 | 33 | commits |
| 34 | 34 | end |
| 35 | 35 | |
| 36 | + def round_commit_count | |
| 37 | + if commit_count > 10000 | |
| 38 | + '10000+' | |
| 39 | + elsif commit_count > 5000 | |
| 40 | + '5000+' | |
| 41 | + elsif commit_count > 1000 | |
| 42 | + '1000+' | |
| 43 | + else | |
| 44 | + commit_count | |
| 45 | + end | |
| 46 | + end | |
| 47 | + | |
| 36 | 48 | def branch_names |
| 37 | 49 | Rails.cache.fetch(cache_key(:branch_names)) do |
| 38 | 50 | raw_repository.branch_names |
| ... | ... | @@ -45,8 +57,10 @@ class Repository |
| 45 | 57 | end |
| 46 | 58 | end |
| 47 | 59 | |
| 48 | - def method_missing(m, *args, &block) | |
| 49 | - raw_repository.send(m, *args, &block) | |
| 60 | + def commit_count | |
| 61 | + Rails.cache.fetch(cache_key(:commit_count)) do | |
| 62 | + raw_repository.raw.commit_count | |
| 63 | + end | |
| 50 | 64 | end |
| 51 | 65 | |
| 52 | 66 | # Return repo size in megabytes |
| ... | ... | @@ -61,6 +75,7 @@ class Repository |
| 61 | 75 | Rails.cache.delete(cache_key(:size)) |
| 62 | 76 | Rails.cache.delete(cache_key(:branch_names)) |
| 63 | 77 | Rails.cache.delete(cache_key(:tag_names)) |
| 78 | + Rails.cache.delete(cache_key(:commit_count)) | |
| 64 | 79 | Rails.cache.delete(cache_key(:graph_log)) |
| 65 | 80 | end |
| 66 | 81 | |
| ... | ... | @@ -75,6 +90,10 @@ class Repository |
| 75 | 90 | "#{type}:#{path_with_namespace}" |
| 76 | 91 | end |
| 77 | 92 | |
| 93 | + def method_missing(m, *args, &block) | |
| 94 | + raw_repository.send(m, *args, &block) | |
| 95 | + end | |
| 96 | + | |
| 78 | 97 | def respond_to?(method) |
| 79 | 98 | return true if raw_repository.respond_to?(method) |
| 80 | 99 | ... | ... |
app/views/projects/show.html.haml
| ... | ... | @@ -37,9 +37,18 @@ |
| 37 | 37 | |
| 38 | 38 | %hr |
| 39 | 39 | %p |
| 40 | - %p Repo Size: #{@project.repository.size} MB | |
| 41 | - %p Created on: #{@project.created_at.stamp('Aug 22, 2013')} | |
| 42 | - %p Owner: #{link_to @project.owner_name, @project.owner} | |
| 40 | + %p | |
| 41 | + %span.light Repo size is | |
| 42 | + #{@project.repository.size} MB | |
| 43 | + %p | |
| 44 | + %span.light Created at | |
| 45 | + #{@project.created_at.stamp('Aug 22, 2013')} | |
| 46 | + %p | |
| 47 | + %span.light Owned by | |
| 48 | + - if @project.group | |
| 49 | + #{link_to @project.group.name, @project.group} Group | |
| 50 | + - else | |
| 51 | + #{link_to @project.owner_name, @project.owner} | |
| 43 | 52 | - if @project.forked_from_project |
| 44 | 53 | %p |
| 45 | 54 | %i.icon-code-fork |
| ... | ... | @@ -50,3 +59,11 @@ |
| 50 | 59 | %hr |
| 51 | 60 | = link_to @project.gitlab_ci_service.builds_path do |
| 52 | 61 | = image_tag @project.gitlab_ci_service.status_img_path, alt: "build status" |
| 62 | + | |
| 63 | + %hr | |
| 64 | + %p | |
| 65 | + = link_to pluralize(@repository.round_commit_count, 'commit'), project_commits_path(@project) | |
| 66 | + %p | |
| 67 | + = link_to pluralize(@repository.branch_names.count, 'branch'), project_repository_path(@project) | |
| 68 | + %p | |
| 69 | + = link_to pluralize(@repository.tag_names.count, 'tag'), tags_project_repository_path(@project) | ... | ... |