对于一个项目,我需要获取一个 git commit Id 列表(几千个),并一次比较它们两个,将返回的特定信息保存到文件中。我遇到的唯一问题是让 diff 命令在 Java 中工作。我花了几个小时试图解决这个问题,但我仍然需要帮助。
问问题
1739 次
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 回答