Skip to content

Commit 7868a03

Browse files
committed
Исправлено зависание #41
Лог команды git commit в режиме отладки выводится всегда Исправлена ошибка кодировки для лога команды git commit в режиме отладки Установлены зависимости от необходимых последних версий других библиотек
1 parent 0f6b4e9 commit 7868a03

File tree

2 files changed

+17
-12
lines changed

2 files changed

+17
-12
lines changed

packagedef

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
.ЗависитОт("cmdline")
77
.ЗависитОт("tempfiles")
88
.ЗависитОт("tool1cd")
9-
.ЗависитОт("v8runner")
9+
.ЗависитОт("v8runner", "0.7")
1010
.ЗависитОт("strings")
11-
.ЗависитОт("1commands")
11+
.ЗависитОт("1commands", "1.0")
1212
.ВключитьФайл("src")
1313
.ВключитьФайл("tests")
1414
.ВключитьФайл("bin")

src/core/Классы/МенеджерСинхронизации.os

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -412,6 +412,8 @@
412412
ФайлКомментария.Закрыть();
413413
Лог.Информация("Текст коммита: <"+Комментарий+">");
414414

415+
ИмяФайлаЛогаКоммита = ВременныеФайлы.СоздатьФайл("log");
416+
415417
КомандныйФайл = Новый КомандныйФайл;
416418
ПрефиксЭкспортаПеременной = ?(ЭтоWindows, "set", "export");
417419
Если ЭтоWindows Тогда
@@ -421,17 +423,16 @@
421423
КонецЕсли;
422424
КомандныйФайл.ДобавитьКоманду(ПрефиксЭкспортаПеременной + " GIT_AUTHOR_DATE="+ОбернутьВКавычки(ДатаPOSIX(Дата)));
423425
КомандныйФайл.ДобавитьКоманду(ПрефиксЭкспортаПеременной + " GIT_COMMITTER_DATE="+ОбернутьВКавычки(ДатаPOSIX(Дата)));
424-
КомандныйФайл.ДобавитьКоманду("git add -A .");
425-
426-
ИмяФайлаЛогаКоммита = ВременныеФайлы.СоздатьФайл("log");
426+
КомандныйФайл.ДобавитьКоманду(СтрШаблон("git add -A . %1", КомандныйФайл.СуффиксПеренаправленияВывода(ИмяФайлаЛогаКоммита, Истина)));
427427

428428
авторДляГит = Автор;
429429
Если Найти(Автор, "<") <= Найти(Автор, ">") Тогда
430430
авторДляГит = Автор+" <"+Автор+"@localhost>"; // e-mail может быть удобен для поиска в связанных системах //авторДляГит = Автор+" <"+Автор+">";
431431
КонецЕсли;
432432

433-
// КомандаКоммита = "git commit -a --file="""+ИмяФайлаКомментария+""" --author="""+Автор+""" >"+ИмяФайлаЛогаКоммита;
434-
КомандаКоммита = "git commit -a --file="""+ИмяФайлаКомментария+""" --author="""+Автор+""" "+КомандныйФайл.СуффиксПеренаправленияВывода(ИмяФайлаЛогаКоммита, Истина);
433+
СтрокаПеренаправленияВывода = КомандныйФайл.СуффиксПеренаправленияВывода(ИмяФайлаЛогаКоммита, Истина, Ложь);
434+
КомандаКоммита = СтрШаблон("git commit -a --file=""%1"" --author=""%2"" %3", ИмяФайлаКомментария, Автор, СтрокаПеренаправленияВывода);
435+
435436
КомандныйФайл.ДобавитьКоманду(КомандаКоммита);
436437
КомандныйФайл.ДобавитьКоманду("exit " + ?(ЭтоWindows, "/b %ERRORLEVEL%", "$#"));
437438

@@ -450,14 +451,16 @@
450451

451452
Лог.Информация("ВыполнитьКоммитГит: Вызов git commit вернул код <" + рез + "> ");
452453

454+
текстФайла = "";
455+
успешно = ПолучитьТекстФайла(ИмяФайлаЛогаКоммита, текстФайла);
453456
Если рез <> 0 Тогда
454-
текстФайла = "";
455-
успешно = ПолучитьТекстФайла(ИмяФайлаЛогаКоммита, текстФайла);
456457
Если успешно Тогда
457-
Лог.Ошибка("ВыполнитьКоммитГит: Лог команды git commit"+Символы.ПС+текстФайла);
458+
Лог.Ошибка("ВыполнитьКоммитГит: Лог команды git commit %1%2", Символы.ПС, текстФайла);
458459
Иначе
459460
Лог.Ошибка("ВыполнитьКоммитГит: Не удалось получить лог команды git commit");
460461
КонецЕсли;
462+
Иначе
463+
Лог.Отладка("ВыполнитьКоммитГит: Лог команды git commit %1%2", Символы.ПС, текстФайла);
461464
КонецЕсли;
462465

463466
УдалитьВременныеФайлыПриНеобходимости(ИмяФайлаВыполнения);
@@ -1097,7 +1100,9 @@
10971100
Возврат Ложь;
10981101
КонецЕсли;
10991102

1100-
ФайлОтчета = Новый ЧтениеТекста(ИмяФайла);
1103+
Кодировка = "utf-8";
1104+
1105+
ФайлОтчета = Новый ЧтениеТекста(ИмяФайла, Кодировка);
11011106
МассивСтрок = Новый Массив;
11021107

11031108
Попытка
@@ -1108,7 +1113,7 @@
11081113
КонецЦикла;
11091114
ФайлОтчета.Закрыть();
11101115
Исключение
1111-
Лог.Ошибка("При выводе файла возникла ошибка: "+ОписаниеОшибки());
1116+
Лог.Ошибка("При выводе файла возникла ошибка: %1", ОписаниеОшибки());
11121117
Возврат Ложь;
11131118
КонецПопытки;
11141119
Если МассивСтрок.Количество() = 0 Тогда

0 commit comments

Comments
 (0)