Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 22 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,24 +4,32 @@

### Что к чему
----
* v8files-extractor.os (рекомендуется для разборки файлов) - скрипт для OneScript, получающий список помещаемых файлов при коммите, фильтрующий по расширению только внешние отчёты/обработки и запускающий внешнюю обработку для распаковки этих файлов.
* * pyv8unpack.py - Python-скрипт, выполняющий такую же задачу + задачу сборки
* v8files-extractor.os - скрипт для OneScript, получающий список помещаемых файлов при коммите, фильтрующий по расширению только внешние отчёты/обработки и запускающий внешнюю обработку для распаковки этих файлов. Так же позволяет собирать обработки из полученных исходников.
* * pyv8unpack.py - Python-скрипт, выполняющий такую же задачу
* [V8Reader.epf](http://infostart.ru/public/106310/) - внешняя обработка 1С, которая с помощью [v8unpack](http://svn2.assembla.com/svn/V8Unpack/track/) разбирает внешние обработки, определяет нормальные наименования для каталогов форм, файлов модулей объектов и т. д. и раскладывает их в нормальную структуру папок.
* ibService - сервисная база данных на 1С для запуска V8Reader.epf
* pre-commit - собственно командный файл, вызываемый git перед каждым помещением. Выполняет роль простой запускалки скрипта pyv8unpack.py

### Установка

1. Зависимости:
1. Зависимости:
* OneScript http://oscript.io/ (рекомендуется)
* * или Python 3.3
* установленная платформа 1С:Предприятия
* установленная платформа 1С:Предприятие 8
* git
* в случае запуска из под wine необходим msscriptcontrol
* в случае использования 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)

3. Путь к платформе находится автоматически в случае стандартной установки 1С. Если необходимо явно указать путь к платформе, то нужно: указать переменную окружения PATH1C c путём к каталогу, в который установлена 1С
3. После скачивания данного репозитория необходимо инициализировать используемые подмодули.
Откройте командую строку и выполните команды:
```cmd
cd путь/к/репозиторию/precommit1c
git submodule update --init --recursive
```

4. Путь к платформе находится автоматически в случае стандартной установки 1С. Если необходимо явно указать путь к платформе, то нужно: указать переменную окружения PATH1C c путём к каталогу, в который установлена 1С
```
set PATH1C = d:\program\
```
Expand All @@ -31,34 +39,36 @@ set PATH1C = d:\program\
onecplatfrorms = c:\program\1cv8\8.3.5.823\bin\1cv8.exe
```

4. Путь хранения исходных текстов разобранных обработок по умолчанию используется как **src** (для обеспечения совместимости со старыми версиями обработки), однако его можно переназначить в ini-файле
5. Путь хранения исходных текстов разобранных обработок по умолчанию используется как **src** (для обеспечения совместимости со старыми версиями обработки), однако его можно переназначить в ini-файле
```
[DEFAULT]
source = plugin_source
```

5. Флажок, изменяющий корневую папку хранения исходных текстов разобранных обработок по умолчанию используется как корневая папка (для обеспечения совместимости со старыми версиями обработки), однако его можно переназначить в ini-файле. Если изменить флажок на True - в каждой корневой папке внешних обработок будет создан подкаталог текстов разобранных обработок.
6. Флажок, изменяющий корневую папку хранения исходных текстов разобранных обработок по умолчанию используется как корневая папка (для обеспечения совместимости со старыми версиями обработки), однако его можно переназначить в ini-файле. Если изменить флажок на True - в каждой корневой папке внешних обработок будет создан подкаталог текстов разобранных обработок.
```
[DEFAULT]
source_in_source = False
```

6. Наконец, содержимое каталога необходимо скопировать в каталог .git/hooks/ вашего проекта.
7. Наконец, содержимое каталога необходимо скопировать в каталог .git/hooks/ вашего проекта.
> *Примечание:* каталог .git по умолчанию скрыт.

В итоге у вас должна получиться следующая структура каталога:
```
.git\
hooks\
pre-commit
V8Reader
ibService
tools
ibService
v8files-extractor.os
pyv8unpack.py
```

##Запуск
##Запуск

После установки достаточно для проверки сделать commit для любого файла epf/erf, и в вашем репозитории автоматически должна создаться папка *src*, полностью повторяющая структуру проекта, изменённые или добавленные файлы распакуются в папки с аналогичными наименованиями.
После установки достаточно для проверки сделать commit для любого файла epf/erf, и в вашем репозитории автоматически должна создаться папка *src*, полностью повторяющая структуру проекта, изменённые или добавленные файлы распакуются в папки с аналогичными наименованиями.

##Командная строка запуска OneScript

Expand Down Expand Up @@ -110,7 +120,7 @@ optional arguments:

Дополнительно необходима настройка git для возможности использования кириллических наименований внешних обработок ```git config --local core.quotepath false```

Не стоит называть файлы с разным расширением epf и erf одинаковыми именами - каталоги с исходниками создаются только по наименованию без учёта расширения и возможен конфликт имен.
Не стоит называть файлы с разным расширением epf и erf одинаковыми именами - каталоги с исходниками создаются только по наименованию без учёта расширения и возможен конфликт имен.

##Что внутри

Expand Down