2

プロジェクトの場合、git コミット ID (数千) のリストを取得し、それらを一度に 2 つ比較して、返された特定の情報をファイルに保存する必要があります。私が抱えている唯一の問題は、diff コマンドを Java で動作させることです。私はこれを理解しようと何時間も費やしましたが、まだ支援が必要です.

4

1 に答える 1

2

これを使用してコマンドを実行し、その結果を取得できます。

    ProcessBuilder processBuilder = new ProcessBuilder(command);
    processBuilder.redirectErrorStream(true);
    Process process = processBuilder.start();
    String output = readOutput(process);
    try {
        if (process.waitFor() != 0) {
            throw new IOException(
                "command exited in error: " + process.exitValue()
                    + "\n" + output);
        }
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
    return output;

したがって、問題に最も適した「git diff...」コマンドを定義し、出力を解析するだけです。

于 2012-06-07T15:04:05.147 に答える