diff --git a/app/models/ci/pipeline.rb b/app/models/ci/pipeline.rb
index dc4590a9923acef1bd418337d98bf431888e9475..2a987bfa87b84b20a2594c3969eb374653ac4c38 100644
--- a/app/models/ci/pipeline.rb
+++ b/app/models/ci/pipeline.rb
@@ -91,6 +91,7 @@ module Ci
     scope :latest, ->(ref = nil) do
       max_id = unscope(:select)
         .select("max(#{quoted_table_name}.id)")
+        .where(ref: ref)
         .group(:ref, :sha)
 
       relation = ref ? where(ref: ref) : self