diff --git a/app/controllers/projects/forks_controller.rb b/app/controllers/projects/forks_controller.rb
index 045ac16599f0ed9d0a63938ed4e6bb86fb89718e..e61e01c4a590bd373b793241da328b2c4008c97a 100644
--- a/app/controllers/projects/forks_controller.rb
+++ b/app/controllers/projects/forks_controller.rb
@@ -5,9 +5,7 @@ class Projects::ForksController < Projects::ApplicationController
 
   def index
     @sort = params[:sort] || 'id_desc'
-    @all_forks = project.forks.includes(:creator).order_by(@sort).reject do  |project|
-      project.repository.raw_repository.nil?
-    end
+    @all_forks = project.forks.includes(:creator).order_by(@sort)
 
     @public_forks, @protected_forks = @all_forks.partition do |project|
       can?(current_user, :read_project, project)
diff --git a/app/views/projects/forks/index.html.haml b/app/views/projects/forks/index.html.haml
index 42fa6fdb782709d43fef3eaf7cba0eeb4d601018..3e636533bb4e9f60a257236079ac836d1de03243 100644
--- a/app/views/projects/forks/index.html.haml
+++ b/app/views/projects/forks/index.html.haml
@@ -30,7 +30,7 @@
             = sort_title_oldest_updated
 
     - if current_user && can?(current_user, :fork_project, @project)
-      - if current_user.already_forked?(@project) && current_user.manageable_namespaces.size < 2
+      - if current_user && current_user.already_forked?(@project) && current_user.manageable_namespaces.size < 2
         = link_to namespace_project_path(current_user, current_user.fork_of(@project)), title: 'Go to your fork', class: 'btn btn-new' do
           = icon('code-fork fw')
           Fork
diff --git a/app/views/shared/projects/_project.html.haml b/app/views/shared/projects/_project.html.haml
index 00bf9dcd2d583b638f02478b95d5acb450532877..900d7939ae9ef5df939cc87b66aa1f1aab803498 100644
--- a/app/views/shared/projects/_project.html.haml
+++ b/app/views/shared/projects/_project.html.haml
@@ -4,7 +4,7 @@
 - ci = false unless local_assigns[:ci] == true
 - skip_namespace = false unless local_assigns[:skip_namespace] == true
 - css_class = '' unless local_assigns[:css_class]
-- show_last_commit_as_description = false unless local_assigns[:show_last_commit_as_description] == true
+- show_last_commit_as_description = false unless local_assigns[:show_last_commit_as_description] == true && !project.empty_repo? && project.commit
 - css_class += " no-description" if project.description.blank? && !show_last_commit_as_description
 - ci_commit = project.ci_commit(project.commit.sha) if ci && !project.empty_repo? && project.commit
 - cache_key = [project.namespace, project, controller.controller_name, controller.action_name, current_application_settings, 'v2.2']
diff --git a/features/project/fork.feature b/features/project/fork.feature
index 5f55b64c4ac021aad7b72c35189c65592af7b651..ca3f2771aa50a85bf63d5fa948e22eb0050f2cda 100644
--- a/features/project/fork.feature
+++ b/features/project/fork.feature
@@ -37,7 +37,7 @@ Feature: Project Fork
     When I fork to my namespace
     And I make forked repo invalid
     And I visit the forks page of the "Shop" project
-    Then I should not see the invalid fork listed
+    Then I should see my fork on the list
 
   Scenario: Viewing private forks of a Project
     Given There is an existent fork of the "Shop" project
diff --git a/features/steps/project/fork.rb b/features/steps/project/fork.rb
index 7e5160bae2f4f024a9b76b8efc659e94c0f337f2..527f7853da9f093a2ea9f1ddce752ec403f7a534 100644
--- a/features/steps/project/fork.rb
+++ b/features/steps/project/fork.rb
@@ -68,11 +68,6 @@ class Spinach::Features::ProjectFork < Spinach::FeatureSteps
     project.save!
   end
 
-  step 'I should not see the invalid fork listed' do
-    project = @user.fork_of(@project)
-    expect(page).not_to have_content("#{project.namespace.human_name} / #{project.name}")
-  end
-
   step 'There is an existent fork of the "Shop" project' do
     user = create(:user, name: 'Mike')
     @forked_project = Projects::ForkService.new(@project, user).execute