gitlab-org--gitlab-foss/app/services/merge_requests
Sean McGivern ad2bfeb857 Fix conflict resolution from corrupted upstream
I don't know why this happens exactly, but given an upstream and fork repository
from a customer, both of which required GC, resolving conflicts would corrupt
the fork so badly that it couldn't be cloned.

This isn't a perfect fix for that case, because the MR may still need to be
merged manually, but it does ensure that the repository is at least usable.

My best guess is that when we generate the index for the conflict
resolution (which we previously did in the target project), we obtain a
reference to an OID that doesn't exist in the source, even though we already
fetch the refs from the target into the source.

Explicitly setting the source project as the place to get the merge index from
seems to prevent repository corruption in this way.
2017-05-12 20:47:51 +01:00
..
conflicts Fix conflict resolution from corrupted upstream 2017-05-12 20:47:51 +01:00
add_todo_when_build_fails_service.rb Make it possible to resolve all todos for pipeline 2017-02-15 10:54:33 +01:00
assign_issues_service.rb Backport of multiple_assignees_feature [ci skip] 2017-05-04 17:11:53 +03:00
base_service.rb Backport of multiple_assignees_feature [ci skip] 2017-05-04 17:11:53 +03:00
build_service.rb Fix 404 when upstream has disabled merge requests 2017-04-27 01:04:07 +03:00
close_service.rb Enforce permissions in {Issues,MergeRequests}::{Close,Reopen}Service 2016-08-13 00:06:11 +02:00
create_from_issue_service.rb Allow to create new branch and empty WIP merge request from issue page 2017-05-04 08:09:21 +00:00
create_service.rb Use the IssuableBaseService lifecycle hooks to cache MergeRequestsClosingIssues 2016-09-21 01:22:20 +05:30
get_urls_service.rb Add ability to disable Merge Request URL on push 2017-03-17 12:35:39 +00:00
merge_request_diff_cache_service.rb switch from diff_file_collection to diffs 2016-08-03 07:00:20 +02:00
merge_service.rb Use exceptions for MergeService error handling 2017-02-28 11:54:02 +00:00
merge_when_pipeline_succeeds_service.rb Update occurrences of MWBS to MWPS 2017-03-01 12:02:02 +01:00
post_merge_service.rb Close todos when accepting a MR via the API. 2016-09-29 14:51:12 -04:00
refresh_service.rb Update occurrences of MWBS to MWPS 2017-03-01 12:02:02 +01:00
reopen_service.rb Enforce permissions in {Issues,MergeRequests}::{Close,Reopen}Service 2016-08-13 00:06:11 +02:00
resolved_discussion_notification_service.rb Address review feedback 2016-08-16 11:04:26 -05:00
update_service.rb Backport of multiple_assignees_feature [ci skip] 2017-05-04 17:11:53 +03:00