Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/services/commits/cherry_pick_service.rb')
-rw-r--r--app/services/commits/cherry_pick_service.rb13
1 files changed, 11 insertions, 2 deletions
diff --git a/app/services/commits/cherry_pick_service.rb b/app/services/commits/cherry_pick_service.rb
index 7e982bf7686..2a634c5ec71 100644
--- a/app/services/commits/cherry_pick_service.rb
+++ b/app/services/commits/cherry_pick_service.rb
@@ -2,9 +2,18 @@
module Commits
class CherryPickService < ChangeService
+ def initialize(*args)
+ super
+
+ @start_project = params[:target_project] || @project
+ @source_project = params[:source_project] || @project
+ end
+
def create_commit!
- commit_change(:cherry_pick).tap do |sha|
- track_mr_picking(sha)
+ Gitlab::Git::CrossRepo.new(@project.repository, @source_project.repository).execute(@commit.id) do
+ commit_change(:cherry_pick).tap do |sha|
+ track_mr_picking(sha)
+ end
end
end