К статье
Практический материал

Разработка и Конфигурация · 11 мин

Как подключить хранилище конфигурации 1С

Как создать и подключить хранилище конфигурации 1С: требования, пошаговая настройка, права пользователей, типичные ошибки и проверка результата.

Хранилище конфигурации — это централизованное место, где платформа 1С хранит историю изменений конфигурации и позволяет нескольким разработчикам работать над одной базой без конфликтов. Без хранилища совместная разработка превращается в ручное сравнение cf-файлов и постоянные потери доработок, поэтому подключение хранилища — первый шаг при выводе доработок в командную работу.

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

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

Что такое хранилище конфигурации и когда оно нужно

Хранилище конфигурации — это специальный каталог (или база на сервере хранилища), в котором платформа сохраняет версии конфигурации и журнал изменений: кто, когда и какие объекты менял. Каждый разработчик подключает свою локальную или тестовую базу к общему хранилищу, захватывает нужные объекты, изменяет их и помещает результат обратно.

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

Хранилище оправдано, когда над конфигурацией работают два и более разработчика либо когда один разработчик ведёт несколько параллельных направлений доработок. Для базы, которую обновляет один специалист, хранилище часто избыточно — достаточно регулярных выгрузок cf и дисциплины резервного копирования.

Выбор способа размещения хранилища

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

Сравнение вариантов

Файловый каталог

Подходит для небольших команд и простых сетей. Требует только общую папку с правами на запись для всех разработчиков. Ограничение: при нестабильной сети возможны повреждения файлов хранилища.

Сервер хранилища

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

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

Подготовка перед созданием хранилища

Перед созданием хранилища выполните три обязательных действия. Во-первых, сделайте полную выгрузку информационной базы в dt-файл через конфигуратор («Администрирование → Выгрузить информационную базу») — это единственный способ быстро восстановить базу при ошибке. Во-вторых, убедитесь, что конфигурация находится в консистентном состоянии: обновите конфигурацию базы данных и устраните все ошибки проверки. В-третьих, подготовьте пустой каталог для хранилища с доступом на чтение и запись для всех будущих пользователей.

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

Создание хранилища и подключение базы

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

Порядок действий
  1. 1
    Сделайте выгрузку базы в dt и убедитесь, что файл открывается на тестовом стенде
  2. 2
    Откройте конфигуратор с монопольным доступом под пользователем с административными правами
  3. 3
    Выполните «Конфигурация → Хранилище конфигурации → Создать хранилище»
  4. 4
    Укажите путь к пустому каталогу (для файлового варианта) или адрес сервера хранилища и имя хранилища
  5. 5
    Дождитесь завершения помещения конфигурации в хранилище — при большой конфигурации это может занять заметное время
  6. 6
    Проверьте, что пункты меню хранилища стали активны, а в статусе отображается подключение

После создания хранилища текущая база автоматически оказывается подключённой к нему. Остальные разработчики подключают свои базы командой «Конфигурация → Хранилище конфигурации → Подключиться к хранилищу», указывая тот же путь или адрес сервера и своё имя пользователя хранилища с паролем.

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

Настройка пользователей и прав в хранилище

Пользователи хранилища заводятся отдельно через «Конфигурация → Хранилище конфигурации → Администрирование хранилища» (доступно администратору хранилища). Для каждого разработчика создайте пользователя, задайте пароль и при необходимости ограничьте права — например, запретите изменение версий конфигурации или административные операции.

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

Если пользователь информационной базы и пользователь хранилища совпадают по имени, конфигуратор обычно подставляет имя автоматически, но пароли у этих учётных записей разные — это частый источник путаницы при первом подключении.

Проверка результата и повседневная работа

После подключения проверьте корректность настройки простым циклом: захватите любой некритичный объект (например, общий модуль), внесите тестовое изменение, поместите объект в хранилище с комментарием и убедитесь, что в истории хранилища появилась новая версия с вашим именем. Затем попросите коллегу получить конфигурацию из хранилища — изменение должно появиться у него.

Контрольные точки

Как проверить результат

Меню хранилища в конфигураторе
Норма

Пункты захвата, помещения и истории активны

Тревожный признак

Пункты неактивны — база не подключена к хранилищу

История хранилища после помещения объекта
Норма

Появилась новая версия с автором и комментарием

Тревожный признак

Версии нет — помещение не выполнено, проверьте ошибки

Статус объекта у коллеги
Норма

Объект отображается как захваченный вами, редактирование недоступно

Тревожный признак

Коллега может захватить тот же объект — проблема с подключением к общему хранилищу

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

Типичные ошибки
01
Подключение без резервной копии — при сбое первичного помещения базу приходится восстанавливать, а копии нет
02
Использование локального пути вместо сетевого — у остальной команды хранилище периодически недоступно
03
Работа без получения свежей версии из хранилища — при помещении возникают конфликты и приходится вручную разбирать расхождения
04
Длительный захват объектов «про запас» — коллеги блокируются и вынуждены просить администратора отменять захваты
05
Отключение базы от хранилища без понимания последствий — связь с историей теряется, повторное подключение требует согласования версий

Ограничения и альтернативы

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

Если команда небольшая, а требования сводятся к истории изменений и защите от одновременного редактирования, штатного хранилища достаточно, и переход на внешние инструменты себя не оправдает. Если же нужны код-ревью, ветвление и автоматическая сборка — рассматривайте 1C:EDT и Git как основной процесс.

Маршрут решения

Как выбрать действие

Над конфигурацией работают 2–5 разработчиков в одной сетиСоздайте файловое хранилище на общем сетевом ресурсе
Команда распределённая или разработчиков многоРазверните сервер хранилища конфигураций
Нужны ветки, код-ревью и интеграция с CIРассмотрите переход на 1C:EDT с Git вместо штатного хранилища
Конфигурацию обновляет один специалистХранилище можно не подключать — достаточно регулярных выгрузок cf и dt
Итог

Что важно запомнить

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

Частые вопросы

Можно ли подключить к хранилищу базу, которая уже дорабатывалась отдельно?

Можно, но при подключении платформа сравнит локальную конфигурацию с версией в хранилище. Если они расходятся, локальные изменения придётся либо перенести вручную, либо принять версию из хранилища. Перед подключением выгрузите локальную конфигурацию в cf, чтобы иметь возможность сравнить и перенести доработки.

Что делать, если разработчик ушёл, не отпустив захваченные объекты?

Администратор хранилища может отменить захват объектов через администрирование хранилища. При этом несохранённые в хранилище изменения этого разработчика будут потеряны, поэтому сначала стоит попытаться получить его базу и поместить изменения штатно.

Можно ли перенести хранилище на другой сервер?

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

Чем хранилище конфигурации отличается от выгрузки в файлы конфигуратора?

Выгрузка в файлы даёт снимок конфигурации в виде XML-файлов без истории и без механизма захвата объектов. Хранилище же ведёт версионную историю, фиксирует авторов изменений и блокирует одновременное редактирование. Для командной работы выгрузка в файлы хранилище не заменяет.

Влияет ли подключение хранилища на работу пользователей базы?

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

Нужна ли отдельная лицензия для сервера хранилища?

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