Add merge feature into /changes REST endpoint
Allow user to create a merge in Gerrit via POST /changes REST API.
By adding a "merge" attribute which could be a SHA1, a branch name or a
tag name, etc. in the post JSON, gerrit will create a merge commit
instead of an empty commit. If there are conflicts, the response will
be rejected with a MergeConfictException which contains conflict
message.
Add dry run end point into GET
/projects/{project}/branches/{branch}/mergeable with query parameters
source (required) and strategy (optional) and return a
MergeableInfo entity.
Change-Id: I8f45f324704b3ff3eb20cb57c6e3bd75f2bf60ef
This commit is contained in:
@@ -25,4 +25,5 @@ public class ChangeInput {
|
||||
public ChangeStatus status;
|
||||
public String baseChange;
|
||||
public Boolean newBranch;
|
||||
public MergeInput merge;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
// Copyright (C) 2016 The Android Open Source Project
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package com.google.gerrit.extensions.common;
|
||||
|
||||
public class MergeInput {
|
||||
/**
|
||||
* {@code source} can be any Git object reference expression.
|
||||
*
|
||||
* @see <a href="https://www.kernel.org/pub/software/scm/git/docs/gitrevisions.html">gitrevisions(7)</a>
|
||||
*/
|
||||
public String source;
|
||||
|
||||
/**
|
||||
* {@code strategy} name of the merge strategy.
|
||||
*
|
||||
* @see org.eclipse.jgit.merge.MergeStrategy
|
||||
*/
|
||||
public String strategy;
|
||||
}
|
||||
@@ -20,6 +20,8 @@ import java.util.List;
|
||||
|
||||
public class MergeableInfo {
|
||||
public SubmitType submitType;
|
||||
public String strategy;
|
||||
public boolean mergeable;
|
||||
public List<String> conflicts;
|
||||
public List<String> mergeableInto;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user