1
0
mirror of https://github.com/bia-technologies/precommit4onec.git synced 2025-06-02 23:17:25 +02:00

#ONECICD-185

Поправил ошибку установки в каталог, где присутствуют другие папки - не репозитории git
This commit is contained in:
Dmitriy Medvedev 2019-08-07 13:53:42 +03:00
parent e2cdbc13af
commit 3e00a3f970

View File

@ -14,7 +14,7 @@
Процедура НастроитьКоманду(Знач Команда, Знач Парсер) Экспорт
// Добавление параметров команды
Парсер.ДобавитьПозиционныйПараметрКоманды(Команда, "КаталогРепозитория", "Каталог репозитория, которому необходимо подключить precommit. При наличии флага -r устанавливает во вложенные в указанных каталог репозитории.");
Парсер.ДобавитьПозиционныйПараметрКоманды(Команда, "КаталогРепозитория", "Каталог репозитория, к которому необходимо подключить precommit. Флаг -r, указанный после каталога репозитория, устанавливает во вложенные в указанный каталог репозитории.");
Парсер.ДобавитьИменованныйПараметрКоманды(Команда, "-source-dir", "Каталог расположения исходных файлов относительно корня репозитория. По умолчанию <src>");
Парсер.ДобавитьПараметрФлагКоманды(Команда, "-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);