Skip to content

Extract merge method domain methods from Project model

Problem to solve

There are a cluster of the Project model related to Merge Request merge methods that are in violation of our software guidelines: https://docs.gitlab.com/ee/development/software_design.html#taming-omniscient-classes

See !127531 (comment 1500200184) for background.

Proposal

Extract a MergeRequests::MergeMethod domain model that takes project as an initializer argument and abstracts the merge method calculations.