Просмотр исходного кода

Make recursive merge strategy the default merge strategy

Use recursive merge as the default strategy since it can successfully
merge more cases than the resolve strategy can. This is also the default
in native Git.

Change-Id: I38fd522edb2791f15d83e99038185edb09fed8e1
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
tags/v3.0.0.201305080800-m7
Matthias Sohn 11 лет назад
Родитель
Сommit
aa7be667bc

+ 1
- 1
org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/MergeTest.java Просмотреть файл

@@ -97,7 +97,7 @@ public class MergeTest extends CLIRepositoryTestCase {
git.add().addFilepattern("side").call();
git.commit().setMessage("side commit").call();

assertEquals("Merge made by the '" + MergeStrategy.RESOLVE.getName()
assertEquals("Merge made by the '" + MergeStrategy.RECURSIVE.getName()
+ "' strategy.", execute("git merge master")[0]);
}


+ 1
- 1
org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Merge.java Просмотреть файл

@@ -75,7 +75,7 @@ class Merge extends TextBuiltin {
@Option(name = "--no-commit", usage = "usage_noCommit")
private boolean noCommit = false;

private MergeStrategy mergeStrategy = MergeStrategy.RESOLVE;
private MergeStrategy mergeStrategy = MergeStrategy.RECURSIVE;

@Argument(required = true)
private String ref;

+ 1
- 1
org.eclipse.jgit/src/org/eclipse/jgit/api/CherryPickCommand.java Просмотреть файл

@@ -150,7 +150,7 @@ public class CherryPickCommand extends GitCommand<CherryPickResult> {
String cherryPickName = srcCommit.getId().abbreviate(7).name()
+ " " + srcCommit.getShortMessage(); //$NON-NLS-1$

ResolveMerger merger = (ResolveMerger) MergeStrategy.RESOLVE
ResolveMerger merger = (ResolveMerger) MergeStrategy.RECURSIVE
.newMerger(repo);
merger.setWorkingTreeIterator(new FileTreeIterator(repo));
merger.setBase(srcParent.getTree());

+ 1
- 1
org.eclipse.jgit/src/org/eclipse/jgit/api/MergeCommand.java Просмотреть файл

@@ -95,7 +95,7 @@ import org.eclipse.jgit.util.StringUtils;
*/
public class MergeCommand extends GitCommand<MergeResult> {

private MergeStrategy mergeStrategy = MergeStrategy.RESOLVE;
private MergeStrategy mergeStrategy = MergeStrategy.RECURSIVE;

private List<Ref> commits = new LinkedList<Ref>();


+ 4
- 3
org.eclipse.jgit/src/org/eclipse/jgit/api/RevertCommand.java Просмотреть файл

@@ -160,7 +160,7 @@ public class RevertCommand extends GitCommand<RevCommit> {
String revertName = srcCommit.getId().abbreviate(7).name()
+ " " + srcCommit.getShortMessage(); //$NON-NLS-1$

ResolveMerger merger = (ResolveMerger) MergeStrategy.RESOLVE
ResolveMerger merger = (ResolveMerger) MergeStrategy.RECURSIVE
.newMerger(repo);
merger.setWorkingTreeIterator(new FileTreeIterator(repo));
merger.setBase(srcCommit.getTree());
@@ -194,14 +194,15 @@ public class RevertCommand extends GitCommand<RevCommit> {
merger.getBaseCommit(0, 1),
new ObjectId[] { headCommit.getId(),
srcParent.getId() },
MergeStatus.FAILED, MergeStrategy.RESOLVE,
MergeStatus.FAILED, MergeStrategy.RECURSIVE,
merger.getMergeResults(), failingPaths, null);
else
failingResult = new MergeResult(null,
merger.getBaseCommit(0, 1),
new ObjectId[] { headCommit.getId(),
srcParent.getId() },
MergeStatus.CONFLICTING, MergeStrategy.RESOLVE,
MergeStatus.CONFLICTING,
MergeStrategy.RECURSIVE,
merger.getMergeResults(), failingPaths, null);
if (!merger.failed() && !unmergedPaths.isEmpty()) {
String message = new MergeMessageFormatter()

+ 2
- 2
org.eclipse.jgit/src/org/eclipse/jgit/api/StashApplyCommand.java Просмотреть файл

@@ -168,7 +168,7 @@ public class StashApplyCommand extends GitCommand<ObjectId> {
.getParent(1));
ObjectId stashHeadCommit = stashCommit.getParent(0);

ResolveMerger merger = (ResolveMerger) MergeStrategy.RESOLVE
ResolveMerger merger = (ResolveMerger) MergeStrategy.RECURSIVE
.newMerger(repo);
merger.setCommitNames(new String[] { "stashed HEAD", "HEAD",
"stash" });
@@ -181,7 +181,7 @@ public class StashApplyCommand extends GitCommand<ObjectId> {
dco.setFailOnConflict(true);
dco.checkout(); // Ignoring failed deletes....
if (applyIndex) {
ResolveMerger ixMerger = (ResolveMerger) MergeStrategy.RESOLVE
ResolveMerger ixMerger = (ResolveMerger) MergeStrategy.RECURSIVE
.newMerger(repo, true);
ixMerger.setCommitNames(new String[] { "stashed HEAD",
"HEAD", "stashed index" });

Загрузка…
Отмена
Сохранить