Skip to content

Commit a5787f5

Browse files
authored
Merge pull request #308 from 240596448/develop
Исправление отката VERSIONS при исключении после коммита
2 parents 5c20d08 + 4c9cd0b commit a5787f5

File tree

1 file changed

+18
-3
lines changed

1 file changed

+18
-3
lines changed

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

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -326,8 +326,10 @@
326326
СтрокаВерсии.Комментарий,
327327
СтрокаВерсии.ПредставлениеАвтора,
328328
СтрокаВерсии.Дата);
329-
329+
330330
Исключение
331+
// откат файла версий должен выполняться только до фактического коммита в репозиторий
332+
// поэтому в попытке после коммита в репозиторий больше ничего не должно выполняться
331333
Лог.Отладка("Откатываем файл VERSION после ошибки");
332334
ЗаписатьФайлВерсийГит(КаталогРабочейКопии, ТекущаяВерсия);
333335

@@ -337,6 +339,8 @@
337339

338340
ВызватьИсключение;
339341
КонецПопытки;
342+
343+
ВыполнитьПодпискиПослеКоммита(КаталогРабочейКопии);
340344

341345
ТекущаяВерсия = СледующаяВерсия;
342346
ОбработчикПодписок.ПослеОбработкиВерсииХранилища(СтрокаВерсии, ТекущаяВерсия);
@@ -843,12 +847,23 @@
843847
ДатаДляГит);
844848
Лог.Отладка("Вывод команды Commit: %1", СокрЛП(ГитРепозиторий.ПолучитьВыводКоманды()));
845849

846-
ОбработчикПодписок.ПослеКоммита(ГитРепозиторий, КаталогРабочейКопии);
847-
848850
ЗавершитьПроцесс_TGitCache_exe();
849851

850852
КонецПроцедуры
851853

854+
// Выполняет подписки после коммита в репозиторий
855+
//
856+
// Параметры:
857+
// КаталогРабочейКопии - Строка - полный путь к рабочему каталогу копии
858+
//
859+
Процедура ВыполнитьПодпискиПослеКоммита(КаталогРабочейКопии)
860+
861+
ГитРепозиторий = ПолучитьГитРепозиторий(КаталогРабочейКопии);
862+
863+
ОбработчикПодписок.ПослеКоммита(ГитРепозиторий, КаталогРабочейКопии);
864+
865+
КонецПроцедуры
866+
852867
#КонецОбласти
853868

854869
#Область Функциональность_работы_с_таблицами_хранилища

0 commit comments

Comments
 (0)