gitlab-org--gitlab-foss/app/helpers
Valery Sizov bbbcc9657f Merge branch 'fix-error-500-when-no-head' into 'master'
Fix error 500 when no HEAD is available

Steps to reproduce:

1. Create a project with a README
2. In the actual remote, type: `git symbolic-ref HEAD refs/heads/nowhere`
3. Check that HEAD is gone via `git ls-remote .`
4. Go to the projects page and see the Error 500

Error:

```
NoMethodError - undefined method `sha' for nil:NilClass:
  app/helpers/projects_helper.rb:281:in `readme_cache_key'
  app/views/projects/_readme.html.haml:10:in `_app_views_projects__readme_html_haml___2036282917939462960_70154565285700'
  actionview (4.1.11) lib/action_view/template.rb:145:in `block in render'
  activesupport (4.1.11) lib/active_support/notifications.rb:159:in `block in instrument'
  activesupport (4.1.11) lib/active_support/notifications/instrumenter.rb:20:in `instrument'
  activesupport (4.1.11) lib/active_support/notifications.rb:159:in `instrument'
  actionview (4.1.11) lib/action_view/template.rb:339:in `instrument'
  actionview (4.1.11) lib/action_view/template.rb:143:in `render'
  rack-mini-profiler (0.9.0) lib/mini_profiler/profiling_methods.rb:108:in `block in profile_method'
  actionview (4.1.11) lib/action_view/renderer/partial_renderer.rb:306:in `render_partial'
  actionview (4.1.11) lib/action_view/renderer/partial_renderer.rb:279:in `block in render'
  actionview (4.1.11) lib/action_view/renderer/abstract_renderer.rb:38:in `block in instrument'
  activesupport (4.1.11) lib/active_support/notifications.rb:159:in `block in instrument'
  activesupport (4.1.11) lib/active_support/notifications/instrumenter.rb:20:in `instrument'
  activesupport (4.1.11) lib/active_support/notifications.rb:159:in `instrument'
  actionview (4.1.11) lib/action_view/renderer/abstract_renderer.rb:38:in `instrument'
  actionview (4.1.11) lib/action_view/renderer/partial_renderer.rb:278:in `render'
  actionview (4.1.11) lib/action_view/renderer/renderer.rb:47:in `render_partial'
  actionview (4.1.11) lib/action_view/helpers/rendering_helper.rb:35:in `render'
  haml (4.0.5) lib/haml/helpers/action_view_mods.rb:10:in `block in render_with_haml'
  haml (4.0.5) lib/haml/helpers.rb:89:in `non_haml'
  haml (4.0.5) lib/haml/helpers/action_view_mods.rb:10:in `render_with_haml'
  app/views/projects/show.html.haml:47:in `_app_views_projects_show_html_haml__1458303859692972698_70154948164180'
  actionview (4.1.11) lib/action_view/template.rb:145:in `block in render'
  activesupport (4.1.11) lib/active_support/notifications.rb:159:in `block in instrument'
```

Closes https://github.com/gitlabhq/gitlabhq/issues/9484, but there may be some other issue there.

See merge request !1041
2015-07-24 20:18:14 +00:00
..
appearances_helper.rb
application_helper.rb
application_settings_helper.rb
auth_helper.rb
blob_helper.rb
branches_helper.rb
broadcast_messages_helper.rb
commits_helper.rb
compare_helper.rb
dashboard_helper.rb
diff_helper.rb
emails_helper.rb
events_helper.rb
explore_helper.rb
external_wiki_helper.rb
git_helper.rb
gitlab_markdown_helper.rb
gitlab_routing_helper.rb
graph_helper.rb
groups_helper.rb
icons_helper.rb
issues_helper.rb
labels_helper.rb
merge_requests_helper.rb
milestones_helper.rb
namespaces_helper.rb
nav_helper.rb
notes_helper.rb
notifications_helper.rb
page_layout_helper.rb
preferences_helper.rb
projects_helper.rb
search_helper.rb
selects_helper.rb
snippets_helper.rb
sorting_helper.rb
submodule_helper.rb
tab_helper.rb
tags_helper.rb
tree_helper.rb
version_check_helper.rb
visibility_level_helper.rb
wiki_helper.rb