diff options
author | tiagonbotelho <tiagonbotelho@hotmail.com> | 2016-03-01 11:42:47 +0000 |
---|---|---|
committer | Yorick Peterse <yorickpeterse@gmail.com> | 2016-03-07 21:59:39 +0100 |
commit | c2c5572e22d8e03b111859f3cf143181edd8c20f (patch) | |
tree | 6b0bf9a3f129c66983c6f720d6765d4a62fc3346 /app/models | |
parent | dc31aff3da6a2d576e0bd99249911c9373e56d98 (diff) | |
download | gitlab-ce-c2c5572e22d8e03b111859f3cf143181edd8c20f.tar.gz |
adds swp and swo to gitignore and improves migration for project main_language
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/.project.rb.swo | bin | 49152 -> 0 bytes | |||
-rw-r--r-- | app/models/project.rb | 18 | ||||
-rw-r--r-- | app/models/repository.rb | 6 |
3 files changed, 18 insertions, 6 deletions
diff --git a/app/models/.project.rb.swo b/app/models/.project.rb.swo Binary files differdeleted file mode 100644 index 5d264ccfaaa..00000000000 --- a/app/models/.project.rb.swo +++ /dev/null diff --git a/app/models/project.rb b/app/models/project.rb index 3d3fd6f76a2..9400d8a17af 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -89,12 +89,8 @@ class Project < ActiveRecord::Base # checks if the language main language of the project changed before_save :check_main_language def check_main_language - if !repository.empty? && self.changed? - language = Linguist::Repository.new( - repository.rugged, - repository.rugged.head.target_id).language - - self.main_language = language + if commit_count.changed? + self.main_language = repository.main_language end end @@ -957,4 +953,14 @@ class Project < ActiveRecord::Base def wiki @wiki ||= ProjectWiki.new(self, self.owner) end + + def main_language + language = read_attributes(:main_language) + + return language if language + + update_attributes(main_language: repository.main_language) + + read_attributes(:main_language) + end end diff --git a/app/models/repository.rb b/app/models/repository.rb index c135ab61f6a..ff48f993d42 100644 --- a/app/models/repository.rb +++ b/app/models/repository.rb @@ -812,6 +812,12 @@ class Repository raw_repository.ls_files(actual_ref) end + def main_language + unless empty? + Linguist::Repository.new(rugged, rugged.head.target_id).language + end + end + private def cache |