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
Copy file name to clipboardExpand all lines: README.md
+42-17Lines changed: 42 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,45 +1,45 @@
1
-
## Набор утилит для автоматической разборки/сборки внешних обработок и отчетов, при помещении(commit) в git.
1
+
## Набор утилит для автоматической разборки/сборки внешних обработок и отчетов, при помещении(commit) в git
2
2
3
3
### Что к чему
4
4
----
5
-
* pyv8unpack.py - python скрипт, получающий список помещаемых файлов при коммите, фильтрующий по расширению только внешние обработки/отчеты и запускающий внешнюю обработку для распаковки этих файлов.
6
-
*[V8Reader.epf](http://infostart.ru/public/106310/) - внешняя обработка 1С, которая с помощью [v8unpack](http://svn2.assembla.com/svn/V8Unpack/track/) разбирает внешние обработки, определяет нормальные наименования для каталогов форм, файлов модулей объектов и т.д. и раскладывает их в нормальную структуру папок.
5
+
* pyv8unpack.py - Python-скрипт, получающий список помещаемых файлов при коммите, фильтрующий по расширению только внешние отчёты/обработки и запускающий внешнюю обработку для распаковки этих файлов.
6
+
*[V8Reader.epf](http://infostart.ru/public/106310/) - внешняя обработка 1С, которая с помощью [v8unpack](http://svn2.assembla.com/svn/V8Unpack/track/) разбирает внешние обработки, определяет нормальные наименования для каталогов форм, файлов модулей объектов и т.д. и раскладывает их в нормальную структуру папок.
7
7
* ibService - сервисная база данных на 1С для запуска V8Reader.epf
8
-
* pre-commit - собственно командный файл, вызываемый git перед каждым помещением. Выполняет роль простой запускалки скрипта pyv8unpack.py
8
+
* pre-commit - собственно командный файл, вызываемый git перед каждым помещением. Выполняет роль простой запускалки скрипта pyv8unpack.py
9
9
10
10
### Установка
11
11
12
12
1. Зависимости:
13
-
*python 3.3
14
-
* установленная платформа 1С предприятия.
13
+
*Python 3.3
14
+
* установленная платформа 1С:Предприятия
15
15
* git
16
-
* в случае запуска из под wine необходим и msscriptcontrol.
16
+
* в случае запуска из под wine необходим msscriptcontrol
17
17
18
-
2. По умолчанию считается, что пути к python.exe и git.exe находятса в переменной path, иначе необходимо указать явный путь в файлах pre-commit(для python) и pyv8unpack.py(для git)
18
+
2. По умолчанию считается, что пути к python.exe и git.exe находятся в переменной path, иначе необходимо указать явный путь в файлах pre-commit(для python) и pyv8unpack.py(для git)
19
19
20
-
3. Путь к платформе находит автоматически, в случаии стандатной установки 1С. Если необходимо указать явно путь к платформе, необходимо: Указать переменную окружения PATH1C c путем к каталогу, где установленна 1С
20
+
3. Путь к платформе находится автоматически в случае стандартной установки 1С. Если необходимо явно указать путь к платформе, то нужно: указать переменную окружения PATH1C c путём к каталогу, в который установлена 1С
21
21
```
22
22
set PATH1C = d:\program\
23
23
```
24
-
или создать файл ini рядом с файлом скрипта pyv8unpack.py или в домашней папке в корне, с именем precommit1c.ini и содеражнием:
24
+
или создать ini-файл рядом с файлом скрипта pyv8unpack.py или в домашней папке в корне с именем precommit1c.ini и содержанием:
4. Путь хранения исходных текстово разобранных обработок поумолчанию используется как **src** (для обеспечения совместимости со старыми версиями обработки), однако его можно переназначить в iniфайле
30
+
4. Путь хранения исходных текстов разобранных обработок по умолчанию используется как **src** (для обеспечения совместимости со старыми версиями обработки), однако его можно переназначить в ini-файле
31
31
```
32
32
[DEFAULT]
33
33
source = plugin_source
34
34
```
35
35
36
-
5. Флажок изменеяющий корневую папку хранения исходных текстово разобранных обработок поумолчанию используется как корневая папка (для обеспечения совместимости со старыми версиями обработки), однако его можно переназначить в iniфайле. Если изменить флажок на True - в каждой корневой папаке внешних обработок будет создан подкаталог текстово разобранных обработок.
36
+
5. Флажок, изменяющий корневую папку хранения исходных текстов разобранных обработок по умолчанию используется как корневая папка (для обеспечения совместимости со старыми версиями обработки), однако его можно переназначить в ini-файле. Если изменить флажок на True - в каждой корневой папке внешних обработок будет создан подкаталог текстов разобранных обработок.
37
37
```
38
38
[DEFAULT]
39
39
source_in_source = False
40
40
```
41
41
42
-
6. Наконец содержимое каталога необходимо скопировать в каталог .git/hooks/ вашего проекта.
42
+
6. Наконец, содержимое каталога необходимо скопировать в каталог .git/hooks/ вашего проекта.
43
43
> *Примечание:* каталог .git по умолчанию скрыт.
44
44
45
45
```
@@ -53,7 +53,32 @@ source_in_source = False
53
53
54
54
##Запуск
55
55
56
-
После установки достаточно для проверки сделать commit для любого файла epf/erf, и в вашем репозитарии автоматически должна создаться папка *src*, повторяющая полностью структуру проекта, измененные или добавленные файлы распакуются в папки с аналогичным наименованием.
56
+
После установки достаточно для проверки сделать commit для любого файла epf/erf, и в вашем репозитории автоматически должна создаться папка *src*, полностью повторяющая структуру проекта, изменённые или добавленные файлы распакуются в папки с аналогичными наименованиями.
Утилита для автоматической распаковки внешних обработок
66
+
67
+
positional arguments:
68
+
inputPath Путь к файлам, необходимым для распаковки
69
+
output Путь к каталогу, куда распаковывать
70
+
71
+
optional arguments:
72
+
-h, --help Show this help message and exit
73
+
--version Show program's version number and exit
74
+
-v, --verbose Increases log verbosity for each occurence
75
+
--index Добавляем в индекс исходники
76
+
--g Запустить чтение индекса из git и определить список
77
+
файлов для разбора
78
+
--compile Собрать внешний отчёт/обработку
79
+
--type TYPE Тип файла для сборки epf, erf. По умолчанию авто epf
80
+
--platform PLATFORM Путь к платформе 1С
81
+
```
57
82
58
83
##Командная строка запуска
59
84
@@ -82,8 +107,8 @@ optional arguments:
82
107
83
108
##Ограничения
84
109
85
-
Не стоит называть файлы с разным расширением epf и erf одинаковыми именами - каталоги с исходниками создаются только по наименованию без учета расширения и возможен конфликт имен.
86
-
Дополнительно необходима настройка git для возможности использования кирилических наименований внешних обработок ```git config --local core.quotepath false```
110
+
Не стоит называть файлы с разным расширением epf и erf одинаковыми именами - каталоги с исходниками создаются только по наименованию без учёта расширения и возможен конфликт имен.
111
+
Дополнительно необходима настройка git для возможности использования кириллических наименований внешних обработок ```git config --local core.quotepath false```
87
112
##Что внутри
88
113
89
-
Как это работает: pyv8unpack.py повторяет полностью иерархию папок относительно корня репозитария только в папке SRC(от слова source), для каждой измененной внешней обработки создается своя папка и туда с помощью v8unpack распаковывается помещаемая обработка, с помощью v8reader определяются наименования макетов, форм, модуля обработки и переименовываются, переименования сохраняются в служебном файле renames.txt, те файлы, которые невозможно определить или же носят чисто служебный характер, переносятся в каталог *und*
114
+
Как это работает: pyv8unpack.py полностью повторяет иерархию папок относительно корня репозитория только в папке SRC(от слова source), для каждой изменённой внешней обработки создаётся своя папка и туда с помощью v8unpack распаковывается помещаемая обработка, с помощью v8reader определяются наименования макетов, форм, модуля обработки и переименовываются, переименования сохраняются в служебном файле renames.txt, те файлы, которые невозможно определить или же носят чисто служебный характер, переносятся в каталог *und*
0 commit comments