Набор утилит для автоматической разборки/сборки внешних обработок и отчетов, при помещении (commit) в git
 Здесь вы можете задавать любые вопросы разработчикам и активным участникам
- v8files-extractor.os - скрипт для OneScript, получающий список помещаемых файлов при коммите, фильтрующий по расширению только внешние отчёты/обработки и запускающий внешнюю обработку для распаковки этих файлов. Так же позволяет собирать обработки из полученных исходников.
 - V8Reader.epf - внешняя обработка 1С, которая с помощью v8unpack разбирает внешние обработки, определяет нормальные наименования для каталогов форм, файлов модулей объектов и т. д. и раскладывает их в нормальную структуру папок.
 - ibService - сервисная база данных на 1С для запуска V8Reader.epf
 - pre-commit - собственно командный файл, вызываемый git перед каждым помещением. Выполняет роль простой запускалки скрипта v8files-extractor.os
 
- 
Зависимости:
- OneScript http://oscript.io/
 - установленная платформа 1С:Предприятие 8
 - git
 - в случае запуска из под wine необходим msscriptcontrol
 - Библиотеки oscript-library
 
 - 
По умолчанию считается, что пути к oscript.exe и git.exe находятся в переменной path, иначе необходимо указать явный путь в файле pre-commit
 - 
Путь хранения исходных текстов разобранных обработок по умолчанию используется как src (для обеспечения совместимости со старыми версиями обработки), однако его можно переназначить в файле
pre-commit 
- 
Скачайте zip-архив precommit1c.zip со страницы последнего релиза.
 - 
Содержмое архива необходимо разархивировать в каталог .git/hooks/ вашего проекта.
Примечание: каталог .git по умолчанию скрыт.
В итоге у вас должна получиться следующая структура каталога: 
.git\
    hooks\
        pre-commit
        V8Reader
        tools
        ibService
        v8files-extractor.os
- 
Склонируйте репозиторий
precommit1cв удобное место. - 
После клонирования репозитория необходимо инициализировать используемые подмодули.
Откройте командую строку и выполните команды: 
cd путь/к/репозиторию/precommit1c
git submodule update --init --recursive- Cодержимое каталога необходимо скопировать в каталог .git/hooks/ вашего проекта.
Примечание: каталог .git по умолчанию скрыт.
В итоге у вас должна получиться следующая структура каталога: 
.git\
    hooks\
        pre-commit
        V8Reader
        tools
        ibService
        v8files-extractor.os
После установки достаточно для проверки сделать commit для любого файла epf/erf, и в вашем репозитории автоматически должна создаться папка src, полностью повторяющая структуру проекта, изменённые или добавленные файлы распакуются в папки с аналогичными наименованиями.
oscript v8files-extractor.os ?
Утилита сборки/разборки внешних файлов 1С
Параметры командной строки:
        --decompile inputPath outputPath
                Разбор файлов на исходники
        --help
                Показ этого экрана
        --git-precommit outputPath [--remove-orig-bin-files]
                Запустить чтение индекса из git и определить список файлов для разбора, разложить их и добавить исходники в индекс
                Если передан флаг --remove-orig-bin-files, обработанные файлы epf/ert будут удалены из индекса git
        --compile inputPath outputPath [--recursive]
                Собрать внешний файл/обработку.
                Если указан параметр --recursive, скрипт будет рекурсивно искать исходные коды отчетов и обработок в указанном каталоге и собирать их, повторяя структуру каталога
Дополнительно необходима настройка git для возможности использования кириллических наименований внешних обработок git config --local core.quotepath false
Не стоит называть файлы с разным расширением epf и erf одинаковыми именами - каталоги с исходниками создаются только по наименованию без учёта расширения и возможен конфликт имен.
Как это работает: v8files-extractor.os полностью повторяет иерархию папок относительно корня репозитория только в папке SRC (от слова source), для каждой изменённой внешней обработки создаётся своя папка и туда с помощью v8unpack распаковывается помещаемая обработка, с помощью v8reader определяются наименования макетов, форм, модуля обработки и переименовываются, переименования сохраняются в служебном файле renames.txt, те файлы, которые невозможно определить или же носят чисто служебный характер, переносятся в каталог und
Лицензировано на условиях Apache License 2.0. Смотрите файл LICENSE.md в корневом каталоге репозитория.