summaryrefslogtreecommitdiff
path: root/app/models/repository.rb
diff options
context:
space:
mode:
authorAchilleas Pipinellis <axilleas@axilleas.me>2017-02-02 19:33:33 +0000
committerAchilleas Pipinellis <axilleas@axilleas.me>2017-02-02 19:33:33 +0000
commitc846d3610912bed47404b31c5bc2f190ecbdb93b (patch)
treedd98634af5c2796a6435afe6c1e2a7254d981c8b /app/models/repository.rb
parentbb06183d3d8725b328d9f6f05bf5c4a74b93fb36 (diff)
parentb2e5c423d7080644132c70650bc707feb41cd5a9 (diff)
downloadgitlab-ce-update-import-export-docs.tar.gz
Merge branch 'master' into 'update-import-export-docs'update-import-export-docs
# Conflicts: # doc/user/project/settings/import_export.md
Diffstat (limited to 'app/models/repository.rb')
-rw-r--r--app/models/repository.rb13
1 files changed, 12 insertions, 1 deletions
diff --git a/app/models/repository.rb b/app/models/repository.rb
index 43dba86e5ed..d77b7692d75 100644
--- a/app/models/repository.rb
+++ b/app/models/repository.rb
@@ -1188,7 +1188,18 @@ class Repository
end
def tags_sorted_by_committed_date
- tags.sort_by { |tag| tag.dereferenced_target.committed_date }
+ tags.sort_by do |tag|
+ # Annotated tags can point to any object (e.g. a blob), but generally
+ # tags point to a commit. If we don't have a commit, then just default
+ # to putting the tag at the end of the list.
+ target = tag.dereferenced_target
+
+ if target
+ target.committed_date
+ else
+ Time.now
+ end
+ end
end
def keep_around_ref_name(sha)