Pārlūkot izejas kodu

Add option to select diff algorithm for diff command

The diff command in the pgm package was enhanced to allow
choosing the diff algorithm (currently myers or histogram)

Change-Id: I72083e78fb5c92868eb5d8ec512277d212a39349
Signed-off-by: Christian Halstrick <christian.halstrick@sap.com>
tags/v0.10.1
Christian Halstrick pirms 13 gadiem
vecāks
revīzija
e10808e658

+ 1
- 0
org.eclipse.jgit.pgm/resources/org/eclipse/jgit/pgm/CLIText.properties Parādīt failu

@@ -147,6 +147,7 @@ usage_configureTheServiceInDaemonServicename=configure the service in daemon.ser
usage_deleteBranchEvenIfNotMerged=delete branch (even if not merged)
usage_deleteFullyMergedBranch=delete fully merged branch
usage_detectRenames=detect renamed files
usage_diffAlgorithm=the diff algorithm to use
usage_directoriesToExport=directories to export
usage_disableTheServiceInAllRepositories=disable the service in all repositories
usage_displayAListOfAllRegisteredJgitCommands=Display a list of all registered jgit commands

+ 18
- 0
org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Diff.java Parādīt failu

@@ -53,8 +53,11 @@ import java.io.PrintWriter;
import java.text.MessageFormat;
import java.util.List;

import org.eclipse.jgit.diff.DiffAlgorithm;
import org.eclipse.jgit.diff.DiffEntry;
import org.eclipse.jgit.diff.DiffFormatter;
import org.eclipse.jgit.diff.HistogramDiff;
import org.eclipse.jgit.diff.MyersDiff;
import org.eclipse.jgit.diff.RawTextComparator;
import org.eclipse.jgit.diff.RenameDetector;
import org.eclipse.jgit.dircache.DirCacheIterator;
@@ -98,6 +101,21 @@ class Diff extends TextBuiltin {
detectRenames = Boolean.FALSE;
}

enum SupportedAlgorithm {
myers(MyersDiff.INSTANCE), histogram(new HistogramDiff());

public DiffAlgorithm algorithm;

SupportedAlgorithm(DiffAlgorithm a) {
algorithm = a;
}
};

@Option(name = "--algorithm", usage = "usage_diffAlgorithm")
void setAlgorithm(SupportedAlgorithm s) {
diffFmt.setDiffAlgorithm(s.algorithm);
}

@Option(name = "-l", usage = "usage_renameLimit")
private Integer renameLimit;


Notiek ielāde…
Atcelt
Saglabāt