diff --git a/lib/gitlab_merge.rb b/lib/gitlab_merge.rb index 3bc9ac378c5..2ca7b26d865 100644 --- a/lib/gitlab_merge.rb +++ b/lib/gitlab_merge.rb @@ -8,14 +8,16 @@ class GitlabMerge end def can_be_merged? + result = false process do |repo, output| - !(output =~ /Automatic merge failed/) + result = !(output =~ /CONFLICT/) end + result end def merge process do |repo, output| - if output =~ /Automatic merge failed/ + if output =~ /CONFLICT/ false else repo.git.push({}, "origin", merge_request.target_branch) @@ -39,6 +41,7 @@ class GitlabMerge Dir.chdir(project.satellite.path) do merge_repo = Grit::Repo.new('.') + merge_repo.git.sh "git reset --hard" merge_repo.git.sh "git fetch origin" merge_repo.git.sh "git config user.name \"#{user.name}\"" merge_repo.git.sh "git config user.email \"#{user.email}\""