diff --git a/app/services/merge_requests/refresh_service.rb b/app/services/merge_requests/refresh_service.rb
index b11ecd97a5798560971da3d7c8dad6737512f32c..1daf6bbf553a8f23e628ebb84cfa926edd9a6387 100644
--- a/app/services/merge_requests/refresh_service.rb
+++ b/app/services/merge_requests/refresh_service.rb
@@ -48,7 +48,7 @@ module MergeRequests
     end
 
     def force_push?
-      Gitlab::ForcePushCheck.force_push?(@project, @oldrev, @newrev)
+      Gitlab::Checks::ForcePush.force_push?(@project, @oldrev, @newrev)
     end
 
     # Refresh merge request diff if we push to source or target branch of merge request
diff --git a/lib/gitlab/git_access/change_access_check.rb b/lib/gitlab/checks/change_access.rb
similarity index 93%
rename from lib/gitlab/git_access/change_access_check.rb
rename to lib/gitlab/checks/change_access.rb
index 9268da4ec6ee5796fa44bcf2e9886424ed2b69a0..cb8f4f2cbdd85acfa0ed6319a81070a971f0356a 100644
--- a/lib/gitlab/git_access/change_access_check.rb
+++ b/lib/gitlab/checks/change_access.rb
@@ -1,6 +1,6 @@
 module Gitlab
-  class GitAccess
-    class ChangeAccessCheck
+  module Checks
+    class ChangeAccess
       attr_reader :user_access, :project
 
       def initialize(change, user_access:, project:)
@@ -25,8 +25,6 @@ module Gitlab
       def protected_branch_checks
         return unless project.protected_branch?(@branch_name)
 
-        return unless project.protected_branch?(@branch_name)
-
         if forced_push? && user_access.cannot_do_action?(:force_push_code_to_protected_branches)
           return "You are not allowed to force push code to a protected branch on this project."
         elsif Gitlab::Git.blank_ref?(@newrev) && user_access.cannot_do_action?(:remove_protected_branches)
@@ -67,7 +65,7 @@ module Gitlab
       end
 
       def forced_push?
-        Gitlab::ForcePushCheck.force_push?(@project, @oldrev, @newrev)
+        Gitlab::Checks::ForcePush.force_push?(@project, @oldrev, @newrev)
       end
 
       def matching_merge_request?
diff --git a/lib/gitlab/checks/force_push.rb b/lib/gitlab/checks/force_push.rb
new file mode 100644
index 0000000000000000000000000000000000000000..dfa83a0eab352ec78c2e07a4d5d380a713d5f747
--- /dev/null
+++ b/lib/gitlab/checks/force_push.rb
@@ -0,0 +1,17 @@
+module Gitlab
+  module Checks
+    class ForcePush
+      def self.force_push?(project, oldrev, newrev)
+        return false if project.empty_repo?
+
+        # Created or deleted branch
+        if Gitlab::Git.blank_ref?(oldrev) || Gitlab::Git.blank_ref?(newrev)
+          false
+        else
+          missed_refs, _ = Gitlab::Popen.popen(%W(#{Gitlab.config.git.bin_path} --git-dir=#{project.repository.path_to_repo} rev-list #{oldrev} ^#{newrev}))
+          missed_refs.split("\n").size > 0
+        end
+      end
+    end
+  end
+end
diff --git a/lib/gitlab/force_push_check.rb b/lib/gitlab/force_push_check.rb
deleted file mode 100644
index 93c6a5bb7f58ea0c5a56d3f6da1d57cd7c70d25a..0000000000000000000000000000000000000000
--- a/lib/gitlab/force_push_check.rb
+++ /dev/null
@@ -1,15 +0,0 @@
-module Gitlab
-  class ForcePushCheck
-    def self.force_push?(project, oldrev, newrev)
-      return false if project.empty_repo?
-
-      # Created or deleted branch
-      if Gitlab::Git.blank_ref?(oldrev) || Gitlab::Git.blank_ref?(newrev)
-        false
-      else
-        missed_refs, _ = Gitlab::Popen.popen(%W(#{Gitlab.config.git.bin_path} --git-dir=#{project.repository.path_to_repo} rev-list #{oldrev} ^#{newrev}))
-        missed_refs.split("\n").size > 0
-      end
-    end
-  end
-end
diff --git a/lib/gitlab/git_access.rb b/lib/gitlab/git_access.rb
index 9f5bb9d62cd587d5ccd6570c94d17cbdf781c485..308f23bc9bcdc0e5c4f26d992437e789753bb868 100644
--- a/lib/gitlab/git_access.rb
+++ b/lib/gitlab/git_access.rb
@@ -91,7 +91,7 @@ module Gitlab
     end
 
     def change_access_check(change)
-      ChangeAccessCheck.new(change, user_access: user_access, project: project).exec
+      Checks::ChangeAccess.new(change, user_access: user_access, project: project).exec
     end
 
     def protocol_allowed?