Open
Description
Зависает на первой же команде git diff-index --name-status --cached HEAD
или git status --porcelain
Проблема в реализации метода ПолучитьВыводПроцесса
Так гарантированно работает
Функция ПолучитьВыводПроцесса(Знач КоманднаяСтрока, КодВозврата)
ЛогФайл = ВременныеФайлы.НовоеИмяФайла();
СтрокаЗапуска = "cmd /C """ + КоманднаяСтрока + " > """ + ЛогФайл + """ 2>&1""";
Лог.Отладка(СтрокаЗапуска);
ЗапуститьПриложение(СтрокаЗапуска,, Истина, КодВозврата);
Лог.Отладка("Код возврата: " + КодВозврата);
ЧтениеТекста = Новый ЧтениеТекста(ЛогФайл, "utf-8");
Вывод = ЧтениеТекста.Прочитать();
ЧтениеТекста.Закрыть();
Возврат Вывод;
КонецФункции
а так часто не работает, на локальной машине (Вин7) работает
на нескольких машинх (Server 2012) просто зависает и все :(
Функция ПолучитьВыводПроцесса(Знач КоманднаяСтрока, КодВозврата)
// Это для dev версии 1.0.11
Процесс = СоздатьПроцесс(КоманднаяСтрока, , Истина,, КодировкаТекста.UTF8);
Процесс.Запустить();
Вывод = "";
Процесс.ОжидатьЗавершения();
Вывод = Вывод + Процесс.ПотокВывода.Прочитать();
Вывод = Вывод + Процесс.ПотокОшибок.Прочитать();
КодВозврата = Процесс.КодВозврата;
Возврат Вывод;
КонецФункции
@EvilBeaver Можешь что-нибудь подсказать?