Skip to content
cccskills
FreePublished on GitHub

db-repo

Работа с хранилищем конфигурации 1С. Используй когда нужно захватить объекты, поместить изменения в хранилище конфигурации, получить изменения из него, подключить базу к хранилищу

The English summary is being prepared. Showing the original description.

Run score Not tested

See how to install

Files included (7)

  • SKILL.md14.4 KB
  • references/admin.md2.7 KB
  • references/connect.md2.6 KB
  • references/history.md1.6 KB
  • references/service.md1.4 KB
  • scripts/db-repo.ps179.0 KB
  • scripts/db-repo.py68.4 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

/db-repo — Хранилище конфигурации 1С

Захват и помещение объектов, получение изменений, подключение базы, история версий, администрирование хранилища.

Хранилище конфигурации 1С, а не Git-репозиторий.

Usage

/db-repo lock   [database] -Objects "Справочник.Номенклатура"
/db-repo commit [database] -Objects "Справочник.Номенклатура" -Comment "Добавлен Артикул"
/db-repo unlock [database] -Objects "Справочник.Номенклатура"
/db-repo update [database]

Порядок работы

В базу, подключённую к хранилищу, исходники грузятся только частично и только по захваченным объектам. Выполняй строго по шагам:

0. /db-repo update <база>                      — начать с актуального состояния
1. /db-repo lock <база> -Objects "Справочник.Номенклатура"
2. если шаг 0 или 1 напечатал «локальная конфигурация изменена, получено объектов из хранилища: N» —
   выгрузи названные объекты: /db-dump-xml <база> <каталог> -Mode Partial -ObjectsFile "<файл из вывода>"
3. правки в исходниках: /meta-edit, /form-edit, /skd-edit, /meta-compile и т. д.
4. /db-load-xml <каталог> <база> -Mode Partial -Files "Catalogs/Номенклатура.xml,…" -UpdateDB
5. /db-repo commit <база> -Objects "Справочник.Номенклатура" -Comment "…"

Шаг 0 стоит делать всегда, когда работа не продолжается сразу после предыдущего цикла: правки должны опираться на актуальное состояние — в том числе тех объектов, которые ты не меняешь, но используешь.

Шаг 2 пропускать нельзя: захват и обновление подтягивают из хранилища свежие версии, и загрузка исходников, снятых раньше, откатит чужие изменения — молча, без ошибки.

Что вообще захватывается. Отдельные объекты хранилища — сам объект, а также его формы, макеты и команды. Реквизиты, табличные части, измерения и ресурсы отдельными объектами не являются: они правятся в составе владельца.

Что правишьЧто захватывать
Реквизит, табличную часть, измерение, ресурс, модуль объектасам объект: Справочник.Контрагенты
Существующую форму, макет, командуеё саму: Справочник.Контрагенты.Форма.ФормаЭлемента
Добавляешь новую форму, макет, командуобъект-владельца; при помещении назови и новый объект
Добавляешь новый объект конфигурациитолько корень: Конфигурация. Самого объекта ещё нет — захватить его нельзя; при помещении назови и его

Захватывай минимум того, что правишь: чем шире захват, тем больше конфликтов с коллегами. Захват объекта его формы и макеты не захватывает — для этого есть -WithChildren.

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

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

  1. Если пользователь указал параметры подключения — используй напрямую
  2. Если указал базу по имени — ищи по id / alias / name
  3. Если не указал — сопоставь текущую ветку Git с databases[].branches
  4. Если ветка не совпала — используй default

Платформа — v8path найденной записи базы, иначе корневой v8path. Не задан ни там, ни там — -V8Path не передавай.

Реквизиты хранилища передавать не нужно: запись базы находится по переданным параметрам соединения (-InfoBasePath либо -InfoBaseServer + -InfoBaseRef), реквизиты берутся из её repository. Задать их явно можно параметрами -Repository*.

Команда

powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-repo.ps1" -Command <подкоманда> <параметры>

Рабочий цикл

ПодкомандаЧто делает
lockЗахватить объекты
unlockОтменить захват
commitПоместить изменения в хранилище
updateПолучить изменения из хранилища

Параметры

ПараметрОбязательныйОписание
-InfoBasePath <путь>*Файловая база
-InfoBaseServer <сервер>*Сервер 1С
-InfoBaseRef <имя>*Имя базы на сервере
-UserName <имя>нетПользователь базы
-Password <пароль>нетПароль пользователя базы
-Objects <список>усл.Объекты через запятую. Для lock, unlock, commit обязателен, если не задан -All
-ObjectsFile <путь>нетФайл со списком объектов, одно имя на строку
-AllнетОперация над всей конфигурацией — вместо -Objects, а не вместе с ним
-WithChildrenнетВместе с подчинёнными объектами на полную глубину
-Comment <текст>нетКомментарий к помещению (commit). Многострочный — как есть, с переводами строк
-KeepLockedнетОставить объекты захваченными после помещения
-RevisedнетПолучать захваченные объекты, если потребуется
-ForceнетРазное по подкомандам — см. ниже
-Extension <имя>нетРаботать с хранилищем расширения
-RepositoryPath <путь>нетХранилище явно, вместо реестра
-RepositoryUser <имя>нетПользователь хранилища явно
-RepositoryPassword <пароль>нетПароль пользователя хранилища явно
-AdditionalV8Arguments <список>нетДоп. аргументы 1cv8.exe через запятую

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

-Force

ПодкомандаЧто делает
unlockТеряет локальные правки: объекты перезаписываются версией из хранилища
commitПытается очистить ссылки на удалённые объекты вместо ошибки
updateПодтверждает добавление и удаление объектов конфигурации

Имена объектов

Объект — Справочник.Номенклатура. Форма, макет, команда — полным путём: Документ.ЗаказПокупателя.Форма.ФормаДокумента, Справочник.Номенклатура.Макет.Печать. Корень конфигурации — Конфигурация.

Если объект «не найден», это не всегда опечатка: он мог появиться в хранилище позже, чем обновлялась база (/db-repo update), либо это вовсе не объект хранилища — реквизит или табличная часть.

Результат

Нулевой код не означает, что что-то изменилось. Под нулём приходят «уже захвачено», «обновлять нечего», «помещать нечего» и частичный захват — когда часть объектов занята другими, а остальное захвачено и его можно править.

Читай текст вывода, а не только код. Там же приходит список полученных из хранилища объектов, который требует перевыгрузки перед правкой.

Требуют подтверждения пользователя

Перед этими операциями спроси подтверждение:

ОперацияПочему
lock -AllЗахватывает всю конфигурацию: на большой базе идёт долго и блокирует работу всей команде
unlock -ForceТеряются локальные правки захваченных объектов
disconnectТеряется подключение базы к хранилищу, в том числе на стороне хранилища
connect -ForceReplaceCfgКонфигурация базы заменяется конфигурацией из хранилища

update не выполнится, если у базы в реестре не объявлено repository, а реквизиты не заданы явно: на неподключённой к хранилищу базе эта команда заменяет всю конфигурацию его содержимым и рапортует успех.

Расширения

У расширения своё хранилище со своим путём. Укажи -Extension "<Имя>" — реквизиты возьмутся из extensions[].repository записи базы. Подкоманды работают одинаково для основной конфигурации и для расширения.

Остальные задачи

ФайлПро что
connect.mdПодключение и отключение базы от хранилища
history.mdИстория версий, отчёт, выгрузка версии в CF
admin.mdСоздание хранилища, пользователи и права
service.mdМетки версий, оптимизация, очистка кеша

Примеры

# Захватить справочник вместе с подчинёнными объектами
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-repo.ps1" -Command lock -InfoBasePath "C:\Bases\MyDB" -Objects "Справочник.Номенклатура" -WithChildren

# Захватить корень — он нужен, чтобы добавить или удалить объект конфигурации
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-repo.ps1" -Command lock -InfoBasePath "C:\Bases\MyDB" -Objects "Конфигурация"

# Поместить новый объект: он уже существует, поэтому называется вместе с корнем
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-repo.ps1" -Command commit -InfoBasePath "C:\Bases\MyDB" -Objects "Конфигурация,Справочник.Склады" -Comment "Добавлен справочник Склады"

# Поместить с комментарием, оставив захват
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-repo.ps1" -Command commit -InfoBasePath "C:\Bases\MyDB" -Objects "Справочник.Номенклатура" -Comment "Добавлен реквизит Артикул" -KeepLocked

# Получить изменения из хранилища
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-repo.ps1" -Command update -InfoBasePath "C:\Bases\MyDB"

# Серверная база, расширение
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-repo.ps1" -Command lock -InfoBaseServer "srv01" -InfoBaseRef "MyApp_Dev" -UserName "Admin" -Extension "МоёРасширение" -Objects "Справочник.Номенклатура"

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

  • lock или update сообщил о полученных объектах — выполни /db-dump-xml -Mode Partial с указанным в выводе файлом, и только потом правь исходники
  • после lock правки идут через /db-load-xml -Mode Partial и /db-update
  • изменения готовы — предложи /db-repo commit с комментарием

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Точечное редактирование конфигурации 1С. Используй когда нужно изменить свойства конфигурации, добавить или удалить объект из состава, настроить роли по умолчанию, поменять раскладку панелей, настроить начальную страницу

The English summary is being prepared. Showing the original description.

Nikolay-Shirokov/cc-1c-skills720Updated Oct 24, 2026

Анализ структуры конфигурации 1С — свойства, состав, счётчики объектов. Используй для обзора конфигурации — какие объекты есть, сколько их, какие настройки

The English summary is being prepared. Showing the original description.

Nikolay-Shirokov/cc-1c-skills720Updated Oct 24, 2026

Создать пустую конфигурацию 1С (scaffold XML-исходников). Используй когда нужно начать новую конфигурацию с нуля

The English summary is being prepared. Showing the original description.

Nikolay-Shirokov/cc-1c-skills720Updated Oct 24, 2026

Валидация конфигурации 1С. Используй после создания или модификации конфигурации для проверки корректности

The English summary is being prepared. Showing the original description.

Nikolay-Shirokov/cc-1c-skills720Updated Oct 24, 2026

Заимствование объектов из конфигурации 1С в расширение (CFE). Используй когда нужно перехватить метод, изменить форму или добавить реквизит к существующему объекту конфигурации

The English summary is being prepared. Showing the original description.

Nikolay-Shirokov/cc-1c-skills720Updated Oct 24, 2026

Анализ расширения конфигурации 1С (CFE) — состав, заимствованные объекты, перехватчики, проверка переноса. Используй когда нужно понять что содержит расширение или проверить перенесены ли вставки в конфигурацию

The English summary is being prepared. Showing the original description.

Nikolay-Shirokov/cc-1c-skills720Updated Oct 24, 2026

See all skills by Nikolay-Shirokov

Report a problem with this skill