From 3e00a3f97007efcb92ec09e761d0ab3dc51f7a79 Mon Sep 17 00:00:00 2001 From: Dmitriy Medvedev Date: Wed, 7 Aug 2019 13:53:42 +0300 Subject: [PATCH] #ONECICD-185 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Поправил ошибку установки в каталог, где присутствуют другие папки - не репозитории git --- src/Классы/КомандаИнсталл.os | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/Классы/КомандаИнсталл.os b/src/Классы/КомандаИнсталл.os index 6223461..9979145 100644 --- a/src/Классы/КомандаИнсталл.os +++ b/src/Классы/КомандаИнсталл.os @@ -14,7 +14,7 @@ Процедура НастроитьКоманду(Знач Команда, Знач Парсер) Экспорт // Добавление параметров команды - Парсер.ДобавитьПозиционныйПараметрКоманды(Команда, "КаталогРепозитория", "Каталог репозитория, которому необходимо подключить precommit. При наличии флага -r устанавливает во вложенные в указанных каталог репозитории."); + Парсер.ДобавитьПозиционныйПараметрКоманды(Команда, "КаталогРепозитория", "Каталог репозитория, к которому необходимо подключить precommit. Флаг -r, указанный после каталога репозитория, устанавливает во вложенные в указанный каталог репозитории."); Парсер.ДобавитьИменованныйПараметрКоманды(Команда, "-source-dir", "Каталог расположения исходных файлов относительно корня репозитория. По умолчанию "); Парсер.ДобавитьПараметрФлагКоманды(Команда, "-from-path", "Установить с учетом того, что скрипт прописан в path"); Парсер.ДобавитьПараметрФлагКоманды(Команда, "-r", "Устанавливает во вложенные каталоги. Если вложенный каталог не является репозиторием, то он пропускается."); @@ -31,7 +31,17 @@ Лог = Приложение.ПолучитьЛог(); КаталогРепозитория = ПараметрыКоманды["КаталогРепозитория"]; + + + Если НЕ ЗначениеЗаполнено(КаталогРепозитория) Тогда + + Лог.Ошибка("Для установки прекоммита надо указать каталог"); + Возврат Приложение.РезультатыКоманд().НеверныеПараметры; + + КонецЕсли; + ФайлКаталогРепозитория = Новый Файл(КаталогРепозитория); + Если НЕ ФайлКаталогРепозитория.Существует() ИЛИ ФайлКаталогРепозитория.ЭтоФайл() Тогда Лог.Ошибка("Каталог репозитория '%1' не существует или это файл", КаталогРепозитория); @@ -86,7 +96,6 @@ РепозиторийGit = Новый ГитРепозиторий(); РепозиторийGit.УстановитьРабочийКаталог(КаталогРепозитория); - РепозиторийGit.УстановитьНастройку("core.quotePath", "false", РежимУстановкиНастроекGit.Локально); // проверка каталога Если НЕ РепозиторийGit.ЭтоРепозиторий() Тогда @@ -95,7 +104,7 @@ Возврат; КонецЕсли; - + РепозиторийGit.УстановитьНастройку("core.quotePath", "false", РежимУстановкиНастроекGit.Локально); // решение проблемы с кириллическими путями // установка КаталогGitHook = ОбъединитьПути(КаталогРепозитория, ".git", "hooks"); ФайлКаталогGitHook = Новый Файл(КаталогGitHook);