From 405694a5d683d9a784d1c07d3d65713a0c898908 Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Thu, 12 Dec 2013 11:32:16 +0200 Subject: [PATCH] do not remove merge requests when fork project destroyed Signed-off-by: Dmitriy Zaporozhets --- app/models/project.rb | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/app/models/project.rb b/app/models/project.rb index 48fa2f661..39f0d71b3 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -55,11 +55,15 @@ class Project < ActiveRecord::Base has_one :forked_project_link, dependent: :destroy, foreign_key: "forked_to_project_id" has_one :forked_from_project, through: :forked_project_link - has_many :services, dependent: :destroy - has_many :events, dependent: :destroy + # Merge Requests for target project should be removed with it has_many :merge_requests, dependent: :destroy, foreign_key: "target_project_id" - has_many :fork_merge_requests,dependent: :destroy, foreign_key: "source_project_id", class_name: MergeRequest + + # Merge requests from source project should be kept when source project was removed + has_many :fork_merge_requests, foreign_key: "source_project_id", class_name: MergeRequest + has_many :issues, -> { order "state DESC, created_at DESC" }, dependent: :destroy + has_many :services, dependent: :destroy + has_many :events, dependent: :destroy has_many :milestones, dependent: :destroy has_many :notes, dependent: :destroy has_many :snippets, dependent: :destroy, class_name: "ProjectSnippet" -- 2.11.0