SkillAgentSearch skills...

Git2reposync

No description available

Install / Use

/learn @pumbaEO/Git2reposync
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Синхронизация хранилища 1С с репозиторием git

Обсудить ЧАТ ДЛЯ ОБЩЕНИЯ https://gitter.im/EvilBeaver/oscript-library

GitHub release

Оглавление

<!-- TOC insertAnchor:true --> <!-- /TOC -->

<a id="markdown-введение" name="введение"></a>

Введение

Проект является форком проекта gitsync см. https://github.com/oscript-library/gitsync Проект git2reposync представляет собой:

  1. Библиотеку git2reposync (src/core) - которая реализует основные классы для синхронизации хранилища git c 1С
  2. Приложение git2reposync (src/cmd) - консольное приложение на основе библиотеки cli

Документация и описание публичного API библиотеки

<a id="markdown-установка" name="установка"></a>

Установка

<a id="markdown-вручную" name="вручную"></a>

Вручную

  1. Скачать файл git2reposync*.ospx из раздела releases
  2. Воспользоваться командой:
$ opm install -f <ПутьКФайлу>
  1. Запустить командой git2reposync

<a id="markdown-Требования" name="Требования"></a>

Требования

  • утилита ring и `` - для синхронизации с edt проектами

<a id="markdown-особенности" name="особенности"></a>

Особенности

  • обходит коммиты для синхронизации в обратном, т.е. хронологическом порядке, если указываем sha комитов списком abc1234..cbc56778, то первым коммитом для синхронизации из полученного диапазона будет cbc56778
  • при синхронизации ппроверяет необходимость коммита поиском ключевого слова в списке истории хранилища git2reposha:" + shacommit, если такая версия уже есть значит пропускаем ее
  • Работа с хранилищем конфигурации реализовано на основании библиотеки v8storage
  • Реализована поддержка работы с http и tcp хранилищами
  • Расширяемость функционала за счет использования механизма подписок на события

<a id="markdown-описание-функциональности" name="описание-функциональности"></a>

Описание функциональности

Раздел документации в разработке

<!-- TODO: Сделать описание функциональности -->

<a id="markdown-использование-приложения-git2reposync" name="использование-приложения-git2reposync"></a>

Использование приложения git2reposync

<a id="markdown-подготовка-нового-репозитория" name="подготовка-нового-репозитория"></a>

Настройка плагинов синхронизации

Данный пункт можно пропустить, если Вам не требуется дополнительная функциональность синхронизации

Для расширения функциональности синхронизации предлагается механизм плагинов. Данный механизм реализован через подписки на события синхронизации, с возможностью переопределения стандартной обработки.

Для обеспечения управления плагинами реализована подкоманда plugins, а так же ряд вложенных команд:

  1. init - Инициализация предустановленных плагинов
  2. list - Вывод списка плагинов
  3. enable - Активизация установленных плагинов
  4. disable - Деактивизация установленных плагинов
  5. install - Установка новых плагинов
  6. clear - Очистка установленных плагинов
  7. help - Вывод справки по выбранным плагинам

Пример использования:

  • git2reposync plugins enable edt - будет активирован плагин limit
  • git2reposync plugins list - будет выведен список всех активированных плагинов
  • git2reposync plugins list -a - будет выведен список всех установленных плагинов

Справка по команде plugins: git2reposync plugins --help

Для удобства использования команда plugins имеет короткое название p.

Больше примеров можно увидеть, использовав команду git2reposync usage plugins

Для хранения установленных плагинов и списка активных плагинов используется каталог локальных данных приложения

Список предустановленных плагинов:

Для инициализации предустановленных плагинов необходимо выполнить команду git2reposync plugins init

  1. edt - обеспечивает поддержку сборки cf из edt конфигураций
  2. runner - обеспечивает сборку с с помощью фреймворка vanessa-runner полезно для толстых форм.

<a id="markdown-синхронизация" name="синхронизация"></a>

Синхронизация

Команда sync (синоним s) - выполняет синхронизацию хранилища 1С с git-репозиторием

Подробную справку по опциям и аргументам см. git2reposync sync --help

<a id="markdown-справка-по-использованию-команды" name="справка-по-использованию-команды"></a>

Справка по использованию команды

Команда: sync, s
 Выполняет синхронизацию хранилища  git-репозиторием с 1С

Строка запуска: git2reposync sync [ОПЦИИ] PATH [WORKDIR]

Аргументы:
  PATH          Путь к хранилищу конфигурации 1С. (env $git2reposync_STORAGE_PATH)
  WORKDIR       Каталог исходников внутри локальной копии git-репозитория. (env $git2reposync_WORKDIR)

Опции:
  -u, --storage-user    пользователь хранилища конфигурации (env $git2reposync_STORAGE_USER) (по умолчанию Администратор)
  -p, --storage-pwd     пароль пользователя хранилища конфигурации (env $git2reposync_STORAGE_PASSWORD, $git2reposync_STORAGE_PWD)
  -m  --merge-file      путь к файлу mergesettings, определяющий как будет происходить сравнение объединение в 1с,
                        по умолчанию в корне проекта merge.xml, пример можно найти в .\templates\mergesettingsRecursor.xml

<a id="markdown-глобальные-переменные-окружения" name="глобальные-переменные-окружения"></a>

Глобальные переменные окружения

| Имя | Описание | | ------------------------ | --------------------------------------------------------------------------- | | git2reposync_V8VERSION | маска версии платформы (8.3, 8.3.5, 8.3.6.2299 и т.п.) | | git2reposync_V8_PATH | путь к исполняемому файлу платформы 1С (Например, /opt/1C/v8.3/x86_64/1cv8) | | git2reposync_VERBOSE | вывод отладочной информации в процессе выполнения | | git2reposync_TEMP | путь к каталогу временных файлов |

<a id="markdown-переменные-окружения-команды" name="переменные-окружения-команды"></a>

Переменные окружения команды

| Имя | Описание | | ------------------------------- | ------------------------------------------ | | git2reposync_WORKDIR | рабочий каталог для команды | | git2reposync_STORAGE_PATH | путь к хранилищу конфигурации 1С. | | git2reposync_STORAGE_USER | пользователь хранилища конфигурации | | git2reposync_STORAGE_PASSWORD | пароль пользователя хранилища конфигурации |

<a id="markdown-значения-по-умолчанию" name="значения-по-умолчанию"></a>

Значения по умолчанию

| | | | ------------------ | ---------------------------- | | WORKDIR | текущая рабочая директория | | -u, --storage-user | пользователь Администратор |

<a id="markdown-примеры-использования" name="примеры-использования"></a>

Примеры использования

  • Простое использование

    git2reposync sync C:/Хранилище_1С/ C:/GIT/src

    Данная команда выполнить синхронизацию хранилища 1С по пути C:/Хранилище_1С/ и репозитория git в каталоге C:/GIT/src

  • Инициализация в текущем рабочем каталоге,

    переменная окружения git2reposync_WORKDIR не должна быть задана

    cd C:/work_dir/
    git2reposync sync C:/Хранилище_1С/
    

    Данная команда выполнить синхронизацию хранилища 1С по пути C:/Хранилище_1С/ и репозитория git в каталоге C:/work_dir

  • Инициализация в с указанием пользователя и пароля.

    git2reposync sync --storage-user Admin --storage-pwd=Secret C:/Хранилище_1С/ C:/work_dir/
    

    Данная команда выполнить синхронизацию хранилища 1С по пути C:/Хранилище_1С/ и репозитория git в каталоге C:/work_dir Используя для подключения к хранилищу 1С пользователя Admin и пароль Secret

  • Использование синонимов (короткая версия предыдущего примера)

    git2reposync s -uAdmin -p=Secret C:/Хранилище_1С/ C:/work_dir/
    

    Данная команда выполнить синхронизацию хранилища 1С по пути C:/Хранилище_1С/ и репозитория git в каталоге C:/work_dir Используя для подключения к хранилищу 1С пользователя Admin и пароль Secret

  • Использование конкретной исполняемого файла платформы

    git2reposync --v8-path /opt/1C/v8.3/x86_64/1cv8 s -uAdmin -p=Secret C:/Хранилище_1С/ C:/work_dir/
    

    Данная команда синхронизации выполнится с использованием исполняемого файла платформы /opt/1C/v8.3/x86_64/1cv8 для хранилища 1С по пути C:/Хранилище_1С/ и репозитория git в каталоге C:/work_dir Используя

View on GitHub
GitHub Stars18
CategoryDevelopment
Updated1y ago
Forks6

Languages

1C Enterprise

Security Score

70/100

Audited on Nov 11, 2024

No findings