Skip to content

Commit e0841c8

Browse files
Текущая реализация
1 parent f8e0928 commit e0841c8

File tree

4 files changed

+1356
-1
lines changed

4 files changed

+1356
-1
lines changed

.gitignore

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
*.log
2+
\.vscode/settings\.json
3+
venv/
4+
execution/epfBuild/
5+
execution/epfSrc/
6+
7+
!execution/epfBuild/*.gitkeep
8+
!execution/epfSrc/*.gitkeep
9+
!execution/*.gitkeep

README.md

Lines changed: 76 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,77 @@
11
# unpackPy
2-
Yet another precommit 1c. Python
2+
3+
[![downloads](https://www.python.org/static/img/python-logo.png)](https://www.python.org/downloads/)
4+
5+
## Миссия инструмента
6+
7+
1. Организация процесса сборки/извлечения метаданных:
8+
9+
- Извелечение исходников, в формате 1С:Предприятие
10+
- Реорганизция исходников в установленый формат хранения ("unpackPy" формат)
11+
- Модификация исходников установленного формата
12+
- Конвертация исходников установленного формата в формат 1С:Предприятие
13+
- Сборка исполняемых файлов
14+
15+
2. Оптимизация процесса сборки/извлечения метаданных
16+
17+
## Для работы необходима платформа версии 8.3.10 + или хз какая в которой появился формат выгрузки 2.0
18+
19+
## Быстрый старт
20+
21+
1. Установить [python](https://www.python.org/downloads/)
22+
2. Запустить терминал в корневом каталоге репозитория
23+
3. Установить зависимости (от имени администратора)
24+
25+
```cmd
26+
py -m pip install -r ./tools/requirements.txt
27+
```
28+
29+
4. Описание утилиты
30+
31+
```cmd
32+
py .\src\v8unpack.py -h
33+
```
34+
35+
5. Примеры выполнения команд:
36+
37+
- Разобрать обработку:
38+
39+
```cmd
40+
py .\src\v8unpack.py --v8unpack=./tools/v8unpack.exe parse --epf=./tools/anyEpf.epf --xml=./execution/epfSrc/anyEpf.xml
41+
```
42+
43+
- Разобрать все обработки в каталоге:
44+
45+
```cmd
46+
py .\src\v8unpack.py --v8unpack=./tools/v8unpack.exe parse-all --path=./tools/ --repo-root=./execution/
47+
```
48+
49+
- Собрать обработку:
50+
51+
```cmd
52+
py .\src\v8unpack.py --v8unpack=./tools/v8unpack.exe build --epf=./tools/anyEpf.epf --xml=./execution/epfSrc/anyEpf.xml
53+
```
54+
55+
- Выполнить прекоммит:
56+
57+
```cmd
58+
py .\src\v8unpack.py --v8unpack=./tools/v8unpack.exe precommit --path=.
59+
```
60+
61+
## Проблемы
62+
63+
1. Изменить инструмент таким образом, что бы его было легко внедрить на конкретном продукте
64+
2. Продумать процесс ручного объединения обычных форм
65+
> Конфликт возникший в обычной форме затруднительно устранить, необходимо предоставить такую возможность при помощи внешнего инструмента. Например: собрать 2 ветки -> устранить в конфигураторе -> разобрать на исходники
66+
67+
## Образец внедрения
68+
69+
```py
70+
import v8unpack
71+
72+
epf = '../src/My.epf'
73+
xml = '../src/My.xml'
74+
unp = '../.git/hooks/v8unpack.exe'
75+
v8unpack.unpack(epf, xml, unp)
76+
v8unpack.build(xml, epf, unp)
77+
```

execution/.gitkeep

Whitespace-only changes.

0 commit comments

Comments
 (0)