Я пытаюсь использовать эту команду:
git checkout `git rev-list -n 1 --before="2009-07-27 13:37" master`
Который я запускаю через ProcessBuilder. Теперь я знаю, что остальная часть моего кода работает, так как я проверил его на других примерах. Но я не уверен, как разделить эту команду, чтобы она работала для ProcessBuilder.
Видимо, этот метод не работал:
String[] command = {"git", "checkout", "`git rev-list -n 1 --before=\"2014-01-01 12:00\" master`"};
Это тоже не сработало:
String[] command = {"git", "checkout", "`git", "rev-list", "-n", "1", "--before=\"2014-01-01 12:00\"", "master`"};
Я также не получаю никакого вывода от консоли (я делаю InputStream), что означает, что мне сложнее понять, в чем проблема. Я думаю, что проблема должна быть очевидна для людей, достаточно знакомых с ProcessBuilders, так что да ...
Остальная часть моего кода выглядит так:
ProcessBuilder processBuilder = new ProcessBuilder(command);
processBuilder.directory(new File(fullPath));
process = processBuilder.start();
И путь к каталогу должен быть правильным, как я его проверил (он находится внутри основного каталога репозитория).
Если по какой-либо причине мне потребуется предоставить другие части кода, я сделаю это.