diff options
-rw-r--r-- | CHANGELOG | 1 | ||||
-rw-r--r-- | app/models/repository.rb | 3 | ||||
-rw-r--r-- | spec/models/repository_spec.rb | 6 |
3 files changed, 9 insertions, 1 deletions
diff --git a/CHANGELOG b/CHANGELOG index 800f9c7918f..9014413b824 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -31,6 +31,7 @@ v 8.5.0 (unreleased) - Optimized performance of finding issues to be closed by a merge request - API: Expose MergeRequest#merge_status (Andrei Dziahel) - Revert "Add IP check against DNSBLs at account sign-up" + - Actually use the `skip_merges` option in Repository#commits (Tony Chu) - Fix API to keep request parameters in Link header (Michael Potthoff) - Deprecate API "merge_request/:merge_request_id/comments". Use "merge_requests/:merge_request_id/notes" instead - Deprecate API "merge_request/:merge_request_id/...". Use "merge_requests/:merge_request_id/..." instead diff --git a/app/models/repository.rb b/app/models/repository.rb index 0e17d2b669a..7f0047a002e 100644 --- a/app/models/repository.rb +++ b/app/models/repository.rb @@ -84,7 +84,8 @@ class Repository offset: offset, # --follow doesn't play well with --skip. See: # https://gitlab.com/gitlab-org/gitlab-ce/issues/3574#note_3040520 - follow: false + follow: false, + skip_merges: skip_merges } commits = Gitlab::Git::Commit.where(options) diff --git a/spec/models/repository_spec.rb b/spec/models/repository_spec.rb index 72b4ac6d660..e1ee43e64db 100644 --- a/spec/models/repository_spec.rb +++ b/spec/models/repository_spec.rb @@ -354,4 +354,10 @@ describe Repository, models: true do repository.expire_branch_cache('foo') end end + + describe :skip_merged_commit do + subject { repository.commits(Gitlab::Git::BRANCH_REF_PREFIX + "'test'", nil, 100, 0, true).map{ |k| k.id } } + + it { is_expected.not_to include('e56497bb5f03a90a51293fc6d516788730953899') } + end end |