Remove MergeRequest#to_raw and replace it with #to_diff and #to_patch
This commit is contained in:
parent
2b1afa0e62
commit
b3834bc9b0
|
@ -202,20 +202,22 @@ class MergeRequest < ActiveRecord::Base
|
||||||
false
|
false
|
||||||
end
|
end
|
||||||
|
|
||||||
def to_raw
|
|
||||||
FileUtils.mkdir_p(Rails.root.join("tmp", "patches"))
|
|
||||||
patch_path = Rails.root.join("tmp", "patches", "merge_request_#{self.id}.patch")
|
|
||||||
|
|
||||||
from = commits.last.id
|
|
||||||
to = source_branch
|
|
||||||
|
|
||||||
project.repo.git.run('', "format-patch" , " > #{patch_path.to_s}", {}, ["#{from}..#{to}", "--stdout"])
|
|
||||||
|
|
||||||
patch_path
|
|
||||||
end
|
|
||||||
|
|
||||||
def mr_and_commit_notes
|
def mr_and_commit_notes
|
||||||
commit_ids = commits.map(&:id)
|
commit_ids = commits.map(&:id)
|
||||||
Note.where("(noteable_type = 'MergeRequest' AND noteable_id = :mr_id) OR (noteable_type = 'Commit' AND noteable_id IN (:commit_ids))", mr_id: id, commit_ids: commit_ids)
|
Note.where("(noteable_type = 'MergeRequest' AND noteable_id = :mr_id) OR (noteable_type = 'Commit' AND noteable_id IN (:commit_ids))", mr_id: id, commit_ids: commit_ids)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Returns the raw diff for this merge request
|
||||||
|
#
|
||||||
|
# see "git diff"
|
||||||
|
def to_diff
|
||||||
|
project.repo.git.native(:diff, {timeout: 30, raise: true}, "#{target_branch}...#{source_branch}")
|
||||||
|
end
|
||||||
|
|
||||||
|
# Returns the commit as a series of email patches.
|
||||||
|
#
|
||||||
|
# see "git format-patch"
|
||||||
|
def to_patch
|
||||||
|
project.repo.git.format_patch({timeout: 30, raise: true, stdout: true}, "#{target_branch}..#{source_branch}")
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue