You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## Набор утилит для автоматической разборки/сборки внешних обработок и отчетов, при помещении (commit) в git
1
+
## Набор утилит для автоматической разборки/сборки внешних обработок и отчетов, при помещении (commit) в git
2
2
3
3
[](https://gitter.im/xDrivenDevelopment/precommit1c?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
4
4
5
5
### Что к чему
6
6
----
7
7
* v8files-extractor.os - скрипт для OneScript, получающий список помещаемых файлов при коммите, фильтрующий по расширению только внешние отчёты/обработки и запускающий внешнюю обработку для распаковки этих файлов. Так же позволяет собирать обработки из полученных исходников.
8
-
** pyv8unpack.py - Python-скрипт, выполняющий такую же задачу
9
8
*[V8Reader.epf](http://infostart.ru/public/106310/) - внешняя обработка 1С, которая с помощью [v8unpack](http://svn2.assembla.com/svn/V8Unpack/track/) разбирает внешние обработки, определяет нормальные наименования для каталогов форм, файлов модулей объектов и т. д. и раскладывает их в нормальную структуру папок.
10
9
* ibService - сервисная база данных на 1С для запуска V8Reader.epf
11
-
* pre-commit - собственно командный файл, вызываемый git перед каждым помещением. Выполняет роль простой запускалки скрипта pyv8unpack.py
10
+
* pre-commit - собственно командный файл, вызываемый git перед каждым помещением. Выполняет роль простой запускалки скрипта v8files-extractor.os
12
11
13
12
### Установка
14
13
15
14
1. Зависимости:
16
-
* OneScript http://oscript.io/ (рекомендуется)
17
-
** или Python 3.3
15
+
* OneScript http://oscript.io/
18
16
* установленная платформа 1С:Предприятие 8
19
17
* git
20
18
* в случае запуска из под wine необходим msscriptcontrol
21
-
*в случае использования OneScript-версии требуется установка **develop**-версии библиотек [oscript-library](https://github.com/EvilBeaver/oscript-library)
2. По умолчанию считается, что пути к oscript.exe и/или python.exe и git.exe находятся в переменной path, иначе необходимо указать явный путь в файлах pre-commit (для oscript/python) и pyv8unpack.py (для git)
21
+
2. По умолчанию считается, что пути к oscript.exe иgit.exe находятся в переменной path, иначе необходимо указать явный путь в файлах pre-commit
24
22
25
-
3. После скачивания данного репозитория необходимо инициализировать используемые подмодули.
23
+
3. После клонирования данного репозитория необходимо инициализировать используемые подмодули.
После установки достаточно для проверки сделать commit для любого файла epf/erf, и в вашем репозитории автоматически должна создаться папка *src*, полностью повторяющая структуру проекта, изменённые или добавленные файлы распакуются в папки с аналогичными наименованиями.
Если указан параметр --recursive, скрипт будет рекурсивно искать исходные коды отчетов и обработок в указанном каталоге и собирать их, повторяя структуру каталога
Утилита для автоматической распаковки внешних обработок
102
-
103
-
positional arguments:
104
-
inputPath Путь к файлам, необходимым для распаковки
105
-
output Путь к каталогу, куда распаковывать
106
-
107
-
optional arguments:
108
-
-h, --help Show this help message and exit
109
-
--version Show program's version number and exit
110
-
-v, --verbose Increases log verbosity for each occurence
111
-
--index Добавляем в индекс исходники
112
-
--g Запустить чтение индекса из git и определить список
113
-
файлов для разбора
114
-
--compile Собрать внешний отчёт/обработку
115
-
--type TYPE Тип файла для сборки epf, erf. По умолчанию авто epf
116
-
--platform PLATFORM Путь к платформе 1С
117
-
```
118
-
119
-
##Ограничения
120
-
121
-
Дополнительно необходима настройка git для возможности использования кириллических наименований внешних обработок ```git config --local core.quotepath false```
92
+
Дополнительно необходима настройка git для возможности использования кириллических наименований внешних обработок `git config --local core.quotepath false`
122
93
123
94
Не стоит называть файлы с разным расширением epf и erf одинаковыми именами - каталоги с исходниками создаются только по наименованию без учёта расширения и возможен конфликт имен.
124
95
125
-
##Что внутри
96
+
##Что внутри
126
97
127
-
Как это работает: v8files-extractor.os/pyv8unpack.py полностью повторяет иерархию папок относительно корня репозитория только в папке SRC (от слова source), для каждой изменённой внешней обработки создаётся своя папка и туда с помощью v8unpack распаковывается помещаемая обработка, с помощью v8reader определяются наименования макетов, форм, модуля обработки и переименовываются, переименования сохраняются в служебном файле renames.txt, те файлы, которые невозможно определить или же носят чисто служебный характер, переносятся в каталог *und*
98
+
Как это работает: v8files-extractor.os полностью повторяет иерархию папок относительно корня репозитория только в папке SRC (от слова source), для каждой изменённой внешней обработки создаётся своя папка и туда с помощью v8unpack распаковывается помещаемая обработка, с помощью v8reader определяются наименования макетов, форм, модуля обработки и переименовываются, переименования сохраняются в служебном файле renames.txt, те файлы, которые невозможно определить или же носят чисто служебный характер, переносятся в каталог *und*
0 commit comments