diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2019-11-18 12:06:03 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2019-11-18 12:06:03 +0000 |
commit | 16d9f66e9651d35b52e5a167789befe7b861292c (patch) | |
tree | 38ffe73aeffa5bc8ceaa3357db302edce6d874f6 /app/services/merge_requests | |
parent | 5333cb6c7c960aac58af40c898c87d050d829383 (diff) | |
download | gitlab-ce-16d9f66e9651d35b52e5a167789befe7b861292c.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/services/merge_requests')
-rw-r--r-- | app/services/merge_requests/ff_merge_service.rb | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/app/services/merge_requests/ff_merge_service.rb b/app/services/merge_requests/ff_merge_service.rb index cfbee3e2ff6..6f1fa607ef9 100644 --- a/app/services/merge_requests/ff_merge_service.rb +++ b/app/services/merge_requests/ff_merge_service.rb @@ -11,19 +11,21 @@ module MergeRequests private def commit - repository.ff_merge(current_user, - source, - merge_request.target_branch, - merge_request: merge_request) + ff_merge = repository.ff_merge(current_user, + source, + merge_request.target_branch, + merge_request: merge_request) + + if merge_request.squash + merge_request.update_column(:squash_commit_sha, merge_request.in_progress_merge_commit_sha) + end + + ff_merge rescue Gitlab::Git::PreReceiveError => e raise MergeError, e.message rescue StandardError => e raise MergeError, "Something went wrong during merge: #{e.message}" ensure - if merge_request.squash - merge_request.update_column(:squash_commit_sha, merge_request.in_progress_merge_commit_sha) - end - merge_request.update(in_progress_merge_commit_sha: nil) end end |