This commit is contained in:
Eduard Heimbuch
2019-11-07 08:14:15 +01:00
parent cf90654e24
commit de09097203
2 changed files with 13 additions and 4 deletions

View File

@@ -95,12 +95,12 @@ public class GitMergeCommand extends AbstractGitCommand implements MergeCommand
MergeResult result = doMergeInClone();
if (result.getMergeStatus().isSuccessful()) {
if (mergeStrategy != MergeStrategy.FAST_FORWARD_IF_POSSIBLE) {
if (!isFastForward()) {
doCommit();
}
push();
return MergeCommandResult.success();
} else if (mergeStrategy == MergeStrategy.FAST_FORWARD_IF_POSSIBLE) {
} else if (isFastForward()) {
MergeCommandResult failure = MergeCommandResult.failure(Collections.emptyList());
failure.setAborted(true);
return failure;
@@ -120,7 +120,7 @@ public class GitMergeCommand extends AbstractGitCommand implements MergeCommand
if (mergeStrategy == MergeStrategy.SQUASH) {
mergeCommand.setSquash(true);
} else if (mergeStrategy == MergeStrategy.FAST_FORWARD_IF_POSSIBLE) {
} else if (isFastForward()) {
mergeCommand.setFastForward(org.eclipse.jgit.api.MergeCommand.FastForwardMode.FF_ONLY);
} else {
mergeCommand.setFastForward(org.eclipse.jgit.api.MergeCommand.FastForwardMode.NO_FF);
@@ -150,5 +150,9 @@ public class GitMergeCommand extends AbstractGitCommand implements MergeCommand
logger.info("could not merged branch {} into {} due to conflict in paths {}", toMerge, target, result.getConflicts().keySet());
return MergeCommandResult.failure(result.getConflicts().keySet());
}
private boolean isFastForward() {
return mergeStrategy == MergeStrategy.FAST_FORWARD_IF_POSSIBLE;
}
}
}