-
- Downloads
There was a problem fetching the pipeline summary.
Allow setting content for resolutions
When reading conflicts: 1. Add a `type` field. `text` works as before, and has `sections`; `text-editor` is a file with ambiguous conflict markers that can only be resolved in an editor. 2. Add a `content_path` field pointing to a JSON representation of the file's content for a single file. 3. Hitting `content_path` returns a similar datastructure to the `file`, but without the `content_path` and `sections` fields, and with a `content` field containing the full contents of the file (with conflict markers). When writing conflicts: 1. Instead of `sections` being at the top level, they are now in a `files` array. This matches the read format better. 2. The `files` array contains file hashes, each of which must contain: a. `new_path` b. `old_path` c. EITHER `sections` (which works as before) or `content` (with the full content of the resolved file).
Showing
- app/controllers/application_controller.rb 6 additions, 1 deletionapp/controllers/application_controller.rb
- app/controllers/projects/merge_requests_controller.rb 15 additions, 5 deletionsapp/controllers/projects/merge_requests_controller.rb
- app/models/merge_request.rb 1 addition, 1 deletionapp/models/merge_request.rb
- app/services/merge_requests/resolve_service.rb 20 additions, 4 deletionsapp/services/merge_requests/resolve_service.rb
- config/routes.rb 1 addition, 0 deletionsconfig/routes.rb
- lib/gitlab/conflict/file.rb 43 additions, 8 deletionslib/gitlab/conflict/file.rb
- lib/gitlab/conflict/file_collection.rb 4 additions, 0 deletionslib/gitlab/conflict/file_collection.rb
- lib/gitlab/conflict/parser.rb 10 additions, 5 deletionslib/gitlab/conflict/parser.rb
- lib/gitlab/conflict/resolution_error.rb 6 additions, 0 deletionslib/gitlab/conflict/resolution_error.rb
- spec/controllers/projects/merge_requests_controller_spec.rb 160 additions, 9 deletionsspec/controllers/projects/merge_requests_controller_spec.rb
- spec/services/merge_requests/resolve_service_spec.rb 130 additions, 9 deletionsspec/services/merge_requests/resolve_service_spec.rb
lib/gitlab/conflict/resolution_error.rb
0 → 100644
Please register or sign in to comment