99Перем юТест ;
1010Перем Распаковщик ;
1111Перем Лог ;
12+ Перем ЭтоWindows ;
1213
1314Процедура Инициализация ()
1415
129130
130131 Распаковщик.РазложитьМодули1СПоПапкамСогласноИерархииМетаданных(КаталогПлоскойВыгрузки, КаталогИерархическойВыгрузки, РежимВыгрузкиФайлов.Плоский);
131132
132- ФайлПереименований = Новый Файл(КаталогИерархическойВыгрузки + "\ renames.txt" );
133+ ФайлПереименований = Новый Файл(ОбъединитьПути( КаталогИерархическойВыгрузки, " renames.txt") );
133134 Утверждения.ПроверитьИстину(ФайлПереименований.Существует(), "Не удалось разложим модули 1С по иерархии - не существует файл <" + ФайлПереименований.ПолноеИмя+ ">" );
134135
135136 МассивФайлов = НайтиФайлы (КаталогИерархическойВыгрузки, "*.*" );
355356 ИмяФайлаЛогаГит = ВременныеФайлы.НовоеИмяФайла("txt" );
356357
357358 Батник = Новый КомандныйФайл;
358- Батник.ДобавитьКоманду("cd /d " + ОбернутьВКавычки(КаталогИсходников));
359+ Батник.ДобавитьКоманду(СтрШаблон ( "cd %1 %2" ,? (ЭтоWindows , "/d" , "" ) , ОбернутьВКавычки(КаталогИсходников) ));
359360 Батник.ДобавитьКоманду("git log --pretty=oneline >" + ОбернутьВКавычки(ИмяФайлаЛогаГит));
360361
361362 КодВозврата = Батник.Исполнить();
426427 ВременныйРепо = ВыполнитьКлонированиеТестовогоРепо();
427428
428429 СоздатьФайлАвторовГит_ДляТестов(ВременныйРепо.ЛокальныйРепозиторий);
429- Утверждения.ПроверитьИстину(Новый Файл(ВременныйРепо.ЛокальныйРепозиторий+ "\ AUTHORS" ).Существует());
430+ Утверждения.ПроверитьИстину(Новый Файл(ОбъединитьПути( ВременныйРепо.ЛокальныйРепозиторий, " AUTHORS") ).Существует());
430431
431432 Распаковщик.ВыполнитьКоммитГит(ВременныйРепо.ЛокальныйРепозиторий, "test commit" , "Администратор <admin@localhost>" );
432433
440441 ВременныйРепо = ВыполнитьКлонированиеТестовогоРепо();
441442
442443 СоздатьФайлАвторовГит_ДляТестов(ВременныйРепо.ЛокальныйРепозиторий);
443- Утверждения.ПроверитьИстину(Новый Файл(ВременныйРепо.ЛокальныйРепозиторий+ "\ AUTHORS" ).Существует());
444+ Утверждения.ПроверитьИстину(Новый Файл(ОбъединитьПути( ВременныйРепо.ЛокальныйРепозиторий, " AUTHORS") ).Существует());
444445
445446 Распаковщик.ВыполнитьКоммитГит(ВременныйРепо.ЛокальныйРепозиторий, "test commit" , "Администратор <admin@localhost>" );
446447
472473 ФайлЛога = ВременныеФайлы.СоздатьФайл("log" );
473474 Батник = Новый КомандныйФайл();
474475 Батник.Создать();
475- Батник.ДобавитьКоманду("chcp 1251 > nul" );
476- Батник.ДобавитьКоманду(СтроковыеФункции.ПодставитьПараметрыВСтроку("cd /d "" %1"" " , ЛокальныйКаталог));
476+ Если ЭтоWindows Тогда
477+ Батник.ДобавитьКоманду("chcp 1251 > nul" );
478+ КонецЕсли ;
479+ Батник.ДобавитьКоманду(СтрШаблон ("cd %1 "" %2"" " ,? (ЭтоWindows, "/d" , "" ), ЛокальныйКаталог));
477480
478481 ПараметрыКоманды = Новый Массив;
479482 ПараметрыКоманды.Добавить("git clone" );
480483 ПараметрыКоманды.Добавить(URLРепозитария);
481- ПараметрыКоманды.Добавить(ОбернутьВКавычки("%CD%" ));
484+ ПараметрыКоманды.Добавить(ОбернутьВКавычки(ЛокальныйКаталог ));
482485 ПараметрыКоманды.Добавить(СуффиксПеренаправленияВывода(ФайлЛога, Истина ));
483486
484487 КоманднаяСтрока = СобратьКоманднуюСтроку(ПараметрыКоманды);
485488 Лог.Отладка("Командная строка git clone:" + Символы.ПС + КоманднаяСтрока);
486489 Батник.ДобавитьКоманду(КоманднаяСтрока);
487- Батник.ДобавитьКоманду("exit /b %ERRORLEVEL%" );
490+ Если Не ЭтоWindows Тогда
491+ Батник.ДобавитьКоманду("exit $#" );
492+ Иначе
493+ Батник.ДобавитьКоманду("exit /b %ERRORLEVEL%" );
494+ КонецЕсли ;
488495
489496 РезультатКлонирования = Батник.Исполнить();
490497 // вывод всех сообщений от Git
537544КонецПроцедуры
538545
539546//////////////////////////////////////////////////////////////////////////////
547+ СистемнаяИнформация = Новый СистемнаяИнформация;
548+ ЭтоWindows = Найти (НРег (СистемнаяИнформация.ВерсияОС), "windows" ) > 0 ;
540549
541550Инициализация();
0 commit comments