mcpField
D
db-load-git

db-load-git

github.com/nikolay-shirokovクラウド・DevOps74152 回インストール今日更新
リポジトリ

db-load-git について

db-load-gitは、Gitの作業ツリー、ステージ済みファイル、またはコミット範囲から選んだ1C構成の変更を情報ベースに読み込むスキルです。`.v8-project.json`から接続先を解決し、事前確認や任意のデータベース更新にも対応します。

主な機能

  1. 01Gitの状態やコミット範囲で変更を選択
  2. 02`.v8-project.json`から接続設定を解決
  3. 03構成をデータベースまたは拡張機能に読み込み
  4. 04読み込み内容の確認と任意のDB更新

活用シーン

  1. 01ステージ済み変更を開発用DBに読み込み
  2. 02指定したコミット範囲の変更を適用
  3. 03読み込み対象のオブジェクトを事前確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/nikolay-shirokov/cc-1c-skills --skill db-load-git

インストール後、Claude Code で/db-load-gitを入力して読み込まれたか確認します。

同梱ファイルscripts/db-load-git.ps1scripts/db-load-git.py

README(原文)English

プロジェクトの README より

この README の日本語訳はまだありません。以下は英語の原文です。日本語の紹介はページ上部をご覧ください。

/db-load-git — Загрузка изменений из Git

Определяет изменённые файлы конфигурации по данным Git и выполняет частичную загрузку в информационную базу.

Если в изменениях есть Configuration.xml, платформа выполнит полную загрузку конфигурации, а не только изменённых объектов.

Удалённый объект уйдёт из базы, только если удалён и из состава владельца (ChildObjects объекта или Configuration.xml). Удалённый файл-часть объекта (модуль, файлы Ext/) загрузкой частями не удаляется: скрипт перечислит такие удаления в [ВНИМАНИЕ], а если кроме них загружать нечего, завершится ошибкой. Применить их можно только полной загрузкой (/db-load-xml -Mode Full); чтобы убрать код модуля, достаточно оставить файл пустым.

Usage

/db-load-git [database]
/db-load-git dev                              — все незафиксированные изменения
/db-load-git dev -Source Staged               — только staged
/db-load-git dev -Source Commit -CommitRange "HEAD~3..HEAD"
/db-load-git dev -DryRun                      — только показать что будет загружено

Параметры подключения

Прочитай .v8-project.json из корня проекта и разреши базу:

  1. Если пользователь указал параметры подключения (путь, сервер) — используй напрямую
  2. Если указал базу по имени — ищи по id / alias / name в .v8-project.json
  3. Если не указал — сопоставь текущую ветку Git с databases[].branches
  4. Если ветка не совпала — используй default Платформа — v8path найденной записи базы, иначе корневой v8path. Не задан ни там, ни там — -V8Path не передавай. Если файла нет — предложи /db-list add. Если использованная база не зарегистрирована — после выполнения предложи добавить через /db-list add. Если в записи базы указан configSrc — используй как каталог конфигурации.

Команда

powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-load-git.ps1" <параметры>
Параметры скрипта
ПараметрОбязательныйОписание
-V8Path <путь>нетКаталог bin платформы, или полный путь к 1cv8.exe / ibcmd.exe
-InfoBasePath <путь>*Файловая база
-InfoBaseServer <сервер>*Сервер 1С (для серверной базы)
-InfoBaseRef <имя>*Имя базы на сервере
-UserName <имя>нетИмя пользователя
-Password <пароль>нетПароль
-ConfigDir <путь>даКаталог XML-выгрузки (git-репозиторий)
-Source <источник>нетAll (по умолч.) / Staged / Unstaged / Commit
-CommitRange <range>для CommitДиапазон коммитов (напр. HEAD~3..HEAD)
-Extension <имя>нетЗагрузить в расширение
-NoApplyCheckнетНе проверять применимость расширения после загрузки
-Format <формат>нетHierarchical (по умолч.) / Plain
-DryRunнетТолько показать что будет загружено (без загрузки)
-UpdateDBнетПосле загрузки сразу обновить конфигурацию БД (/UpdateDBCfg)
-AdditionalV8Arguments <список>нетДоп. аргументы запуска 1cv8.exe через запятую, напр. /UseHwLicenses+
-AdditionalIbcmdArguments <список>нетДоп. аргументы ibcmd через запятую, в форме --ключ=значение

* — нужен либо -InfoBasePath, либо пара -InfoBaseServer + -InfoBaseRef

После выполнения

Если -UpdateDB не был указан — предложить /db-update для применения изменений к БД

Примеры

# Все незафиксированные изменения
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-load-git.ps1" -V8Path "C:\Program Files\1cv8\8.3.25.1257\bin" -InfoBasePath "C:\Bases\MyDB" -ConfigDir "C:\WS\cfsrc" -Source All -UpdateDB

# Из диапазона коммитов
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-load-git.ps1" -InfoBasePath "C:\Bases\MyDB" -ConfigDir "C:\WS\cfsrc" -Source Commit -CommitRange "HEAD~3..HEAD"

コメント