How to diff with two files by JGit without creating repo?

我们两清 提交于 2021-01-27 05:24:29

问题


When I use JGit to diff with two files, I must create a repo first. But in Git, I only need to use command git diff --no-index 1.txt 2.txt.

Is there a way to use diff in JGit without creating repo?


回答1:


thank you! I have solved this question!

method is below

private static String getDiff(String file1, String file2) {
    OutputStream out = new ByteArrayOutputStream();
    try {
        RawText rt1 = new RawText(new File(file1));
        RawText rt2 = new RawText(new File(file2));
        EditList diffList = new EditList();
        diffList.addAll(differ.diff(COMP, rt1, rt2));
        new DiffFormatter(out).format(diffList, rt1, rt2);
    } catch (IOException e) {
        e.printStackTrace();
    }
    return out.toString();
}

thank you for your help!




回答2:


Hm I don't understand the question exactly, but maybe you are looking for something like gitective which makes it with the help of his BlobUtils "Diff two files" to a more easy task.



来源:https://stackoverflow.com/questions/12987364/how-to-diff-with-two-files-by-jgit-without-creating-repo

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!