|
138 | 138 | КонецПроцедуры |
139 | 139 |
|
140 | 140 | Функция ТипФайлаПоддерживается(Файл) |
141 | | - Возврат Найти(".epf,.erf,", Файл.Расширение+",") > 0; |
| 141 | + Если ПустаяСтрока(Файл.Расширение) Тогда |
| 142 | + Возврат Ложь; |
| 143 | + КонецЕсли; |
| 144 | + |
| 145 | + Поз = Найти(".epf,.erf,", Файл.Расширение+","); |
| 146 | + Возврат Поз > 0; |
| 147 | + |
142 | 148 | КонецФункции |
143 | 149 |
|
144 | 150 | Функция РазобратьФайлВнутр(Знач ПутьФайла, Знач КаталогВыгрузки) |
|
234 | 240 | КаталогИсходников = ОбъединитьПути(КореньРепо, ВыходнойКаталог); |
235 | 241 | СписокНовыхКаталогов = Новый Массив; |
236 | 242 | Для Каждого Файл Из ИменаФайлов Цикл |
237 | | - |
238 | | - Если Найти(Файл, "\") > 0 Тогда |
239 | | - // git вернул экранированные символы кириллицы |
240 | | - Файл = ДекодироватьЭкранированнуюКириллицу(Файл); |
| 243 | + Если ТипФайлаПоддерживается(Новый Файл(Файл)) Тогда |
| 244 | + Лог.Отладка("Получен из журнала git файл " + Файл); |
| 245 | + ПолныйПуть = ОбъединитьПути(КореньРепо, Файл); |
| 246 | + СписокНовыхКаталогов.Добавить(РазобратьФайл(ПолныйПуть, КаталогИсходников)); |
241 | 247 | КонецЕсли; |
242 | | - |
243 | | - Лог.Отладка("Получен из журнала git файл " + Файл); |
244 | | - ПолныйПуть = ОбъединитьПути(КореньРепо, Файл); |
245 | | - СписокНовыхКаталогов.Добавить(РазобратьФайл(ПолныйПуть, КаталогИсходников)); |
246 | 248 | КонецЦикла; |
247 | 249 |
|
248 | 250 | ДобавитьИсходникиВГит(СписокНовыхКаталогов); |
249 | 251 |
|
250 | 252 | КонецПроцедуры |
251 | 253 |
|
252 | | -Функция ДекодироватьЭкранированнуюКириллицу(Знач ИсходноеИмя) |
253 | | - |
254 | | - Результат = ""; |
255 | | - Хвост = ИсходноеИмя; |
256 | | - Поз = 0; |
257 | | - Пока Истина Цикл |
258 | | - Поз = Найти(Хвост, "\"); |
259 | | - Если Поз = 0 Тогда |
260 | | - Прервать; |
261 | | - КонецЕсли; |
262 | | - КонецЦикла; |
263 | | - |
264 | | - Возврат Результат + Хвост; |
265 | | - |
266 | | -КонецФункции |
267 | | - |
268 | 254 | Функция ПолучитьЖурналИзмененийГит() |
269 | 255 |
|
270 | 256 | Перем КодВозврата; |
|
289 | 275 |
|
290 | 276 | Функция ПолучитьВыводПроцесса(Знач КоманднаяСтрока, КодВозврата) |
291 | 277 |
|
292 | | - Процесс = СоздатьПроцесс(КоманднаяСтрока, , Истина); |
293 | | - Процесс.Запустить(); |
294 | | - Вывод = ""; |
| 278 | + // Это для dev версии 1.0.11 |
| 279 | + //Процесс = СоздатьПроцесс(КоманднаяСтрока, , Истина,, КодировкаТекста.UTF8); |
| 280 | + // Процесс.Запустить(); |
| 281 | + // Вывод = ""; |
| 282 | + |
| 283 | + // Процесс.ОжидатьЗавершения(); |
295 | 284 |
|
296 | | - Процесс.ОжидатьЗавершения(); |
| 285 | + // Вывод = Вывод + Процесс.ПотокВывода.Прочитать(); |
| 286 | + // Вывод = Вывод + Процесс.ПотокОшибок.Прочитать(); |
297 | 287 |
|
298 | | - Вывод = Вывод + Процесс.ПотокВывода.Прочитать(); |
299 | | - Вывод = Вывод + Процесс.ПотокОшибок.Прочитать(); |
| 288 | + // КодВозврата = Процесс.КодВозврата; |
300 | 289 |
|
301 | | - КодВозврата = Процесс.КодВозврата; |
| 290 | + ЛогФайл = ВременныеФайлы.НовоеИмяФайла(); |
| 291 | + СтрокаЗапуска = "cmd /C """ + КоманднаяСтрока + " > """ + ЛогФайл + """ 2>&1"""; |
| 292 | + Лог.Отладка(СтрокаЗапуска); |
| 293 | + ЗапуститьПриложение(СтрокаЗапуска,, Истина, КодВозврата); |
| 294 | + Лог.Отладка("Код возврата: " + КодВозврата); |
| 295 | + ЧтениеТекста = Новый ЧтениеТекста(ЛогФайл, "utf-8"); |
| 296 | + Вывод = ЧтениеТекста.Прочитать(); |
| 297 | + ЧтениеТекста.Закрыть(); |
| 298 | + ВременныеФайлы.УдалитьФайл(ЛогФайл); |
302 | 299 |
|
303 | 300 | Возврат Вывод; |
304 | 301 |
|
|
0 commit comments