Commit c937d06c3c98e9ffce8ec1132203eaff6bf7b231
1 parent
903f9491
Exists in
master
and in
4 other branches
Task#755 auto-merge don`t work correctly.
Showing
1 changed file
with
5 additions
and
2 deletions
Show diff stats
lib/gitlab_merge.rb
| @@ -8,14 +8,16 @@ class GitlabMerge | @@ -8,14 +8,16 @@ class GitlabMerge | ||
| 8 | end | 8 | end |
| 9 | 9 | ||
| 10 | def can_be_merged? | 10 | def can_be_merged? |
| 11 | + result = false | ||
| 11 | process do |repo, output| | 12 | process do |repo, output| |
| 12 | - !(output =~ /Automatic merge failed/) | 13 | + result = !(output =~ /CONFLICT/) |
| 13 | end | 14 | end |
| 15 | + result | ||
| 14 | end | 16 | end |
| 15 | 17 | ||
| 16 | def merge | 18 | def merge |
| 17 | process do |repo, output| | 19 | process do |repo, output| |
| 18 | - if output =~ /Automatic merge failed/ | 20 | + if output =~ /CONFLICT/ |
| 19 | false | 21 | false |
| 20 | else | 22 | else |
| 21 | repo.git.push({}, "origin", merge_request.target_branch) | 23 | repo.git.push({}, "origin", merge_request.target_branch) |
| @@ -39,6 +41,7 @@ class GitlabMerge | @@ -39,6 +41,7 @@ class GitlabMerge | ||
| 39 | 41 | ||
| 40 | Dir.chdir(project.satellite.path) do | 42 | Dir.chdir(project.satellite.path) do |
| 41 | merge_repo = Grit::Repo.new('.') | 43 | merge_repo = Grit::Repo.new('.') |
| 44 | + merge_repo.git.sh "git reset --hard" | ||
| 42 | merge_repo.git.sh "git fetch origin" | 45 | merge_repo.git.sh "git fetch origin" |
| 43 | merge_repo.git.sh "git config user.name \"#{user.name}\"" | 46 | merge_repo.git.sh "git config user.name \"#{user.name}\"" |
| 44 | merge_repo.git.sh "git config user.email \"#{user.email}\"" | 47 | merge_repo.git.sh "git config user.email \"#{user.email}\"" |