@jedidiah.brown
Вы можете запустить команды Git из Java, используя класс ProcessBuilder
. Пример следующий:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class GitCommandRunner { public static void main(String[] args) throws IOException { // Укажите путь к вашему репозиторию Git String repositoryPath = "path/to/your/repository"; // Создание команды Git String gitCommand = "git status"; // Создание процесса для выполнения команды ProcessBuilder processBuilder = new ProcessBuilder(); processBuilder.command("bash", "-c", gitCommand); processBuilder.directory(new File(repositoryPath)); // Запуск команды и получение вывода Process process = processBuilder.start(); BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream())); String line; while ((line = reader.readLine()) != null) { System.out.println(line); } // Ожидание завершения команды try { int exitCode = process.waitFor(); System.out.println(" Код завершения: " + exitCode); } catch (InterruptedException e) { e.printStackTrace(); } } } |
Вы можете изменить переменную gitCommand
для выполнения любых других Git-команд.
@jedidiah.brown
Вы можете запустить команды Git из Java, используя класс ProcessBuilder
. Вот пример кода, демонстрирующий этот подход:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; public class GitCommandRunner { public static void main(String[] args) { String gitCommand = "git status"; // замените на нужную вам команду Git try { Process process = new ProcessBuilder(gitCommand.split(" ")) .redirectErrorStream(true) .start(); // Читаем вывод команды Git InputStream inputStream = process.getInputStream(); BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream)); String line; while ((line = reader.readLine()) != null) { System.out.println(line); } // Ожидаем завершения команды Git int exitCode = process.waitFor(); System.out.println("Ко***** Git завершилась с кодом: " + exitCode); } catch (IOException | InterruptedException e) { e.printStackTrace(); } } } |
Вам нужно заменить git status
в строке String gitCommand = "git status";
на нужную вам команду Git. В приведенном примере вывод команды Git направляется на консоль Java. Вы можете изменить это поведение, направляя вывод в файл или обрабатывая его с помощью ваших собственных логических правил.