1

我正在研究 Java 以显示来自 Git 存储库的一些信息。我正在使用“Runtime.getRuntime().exec”来执行命令。

所以当我写

Process process = Runtime.getRuntime().exec("git --git-dir=/home/gh/git/.git --work-tree=/home/gh/git log");

它完美无缺

但是,我需要获取特定人的日志信息,所以当我编写以下语句时,它没有显示任何结果

String activeDeveloper = "Carlos Rica";
Process process = Runtime.getRuntime().exec("git --git-dir=/home/ghadeer/git/.git --work-tree=/home/ghadeer/git log --author=" + activeDeveloper);

有谁知道怎么回事?

4

1 回答 1

0

按照mazaneicha建议,在作者姓名周围添加这些引号的常用方法是:

Process process = Runtime.getRuntime().exec("git --git-dir=/home/ghadeer/git/.git --work-tree=/home/ghadeer/git log --author=\"" + activeDeveloper + "\"");

但是,如果这仍然不起作用,则需要标记所有命令,如“ Runtime.getRuntime().exec()” SO 问题中所示。

于 2012-08-11T23:48:57.853 回答