Разработка и Конфигурация · 10 мин
Как пользоваться хранилищем конфигурации 1С
Как подключиться к хранилищу конфигурации 1С, захватывать и помещать объекты, обновлять конфигурацию из хранилища и избегать типичных ошибок при групповой разработке.
Хранилище конфигурации — это централизованное хранилище версий конфигурации 1С, которое позволяет нескольким разработчикам одновременно работать над одной базой, не мешая друг другу. Оно хранит историю изменений, контролирует доступ к объектам метаданных и защищает от ситуации, когда один разработчик затирает правки другого.
Механизм встроен в платформу 1С:Предприятие и не требует установки сторонних программ. Работа ведётся через конфигуратор: разработчик захватывает нужные объекты, изменяет их в своей базе, а затем помещает результат обратно в хранилище. Пока объект захвачен одним пользователем, остальные могут его просматривать, но не могут изменять.
Хранилище особенно важно при доработке типовых конфигураций и в командах от двух и более разработчиков. Даже одиночному разработчику оно полезно как система версий: в любой момент можно посмотреть, кто, когда и что изменил, и откатиться к предыдущей версии конфигурации.
Что такое хранилище конфигурации и когда оно нужно
Хранилище конфигурации — это файл или каталог специального формата (обычно файл с расширением 1cd в каталоге хранилища), в котором платформа сохраняет все версии конфигурации и данные о захватах объектов. Физически хранилище размещают в общей сетевой папке, на сервере или публикуют через веб-сервер для доступа по HTTP/HTTPS.
Без хранилища совместная разработка возможна только через выгрузку и загрузку cf-файлов, что неизбежно приводит к конфликтам: два разработчика правят один и тот же модуль, и изменения одного из них теряются. Хранилище решает эту проблему механизмом захвата: объект блокируется для остальных на время редактирования.
Хранилище оправдано, если над конфигурацией работают два и более разработчика, если нужна история изменений для аудита, или если конфигурация распределённая по филиалам. Для небольшой базы с одним внедренцем хранилище может быть избыточным — достаточно регулярных выгрузок cf или dt.
Как создать хранилище и подключиться к нему
Создание хранилища выполняет администратор или ведущий разработчик. Откройте конфигуратор, загрузите конфигурацию, затем выберите в меню «Конфигурация — Хранилище конфигурации — Создать хранилище». Укажите путь к каталогу, где будет размещено хранилище, и задайте имя и пароль администратора хранилища. Учтите, что создать хранилище можно только при монопольном доступе к базе и при открытой конфигурации.
Для подключения остальные разработчики выбирают «Конфигурация — Хранилище конфигурации — Подключиться к хранилищу», указывают путь к каталогу хранилища (или адрес на веб-сервере), имя пользователя и пароль. Пользователей хранилища заводит администратор через пункт «Администрирование — Пользователи хранилища» в том же меню.
- 1Откройте базу в конфигураторе под своим пользователем
- 2Выберите «Конфигурация — Хранилище конфигурации — Подключиться к хранилищу»
- 3Укажите путь к каталогу хранилища или URL на веб-сервере
- 4Введите имя и пароль пользователя хранилища, выданные администратором
- 5После подключения проверьте статус: в заголовке окна конфигуратора появится признак связи с хранилищем
После подключения конфигурация базы ставится «на поддержку хранилища»: объекты становятся доступными для изменения только после захвата. Если попытаться отредактировать объект без захвата, конфигуратор выдаст сообщение о необходимости захватить объект в хранилище.
Захват и изменение объектов
Чтобы изменить объект, щёлкните по нему правой кнопкой мыши в дереве конфигурации и выберите «Захватить в хранилище». Можно захватывать сразу несколько объектов, выделив их с клавишей Ctrl или Shift. В диалоге захвата есть опция «Получать захваченные» — она определяет, будет ли объект сразу обновлён из хранилища до актуальной версии.
После захвата объект открывается для редактирования в вашей базе. Вносите изменения как обычно: правьте модули, формы, реквизиты. Важно понимать, что ваши коллеги в это время видят объект как захваченный вами и не могут его изменить — поэтому не захватывайте объекты «про запас» и не держите захват неделями.
Если нужно срочно отредактировать объект, захваченный коллегой, не отбирайте захват самостоятельно — договоритесь с ним. Администратор хранилища может принудительно отменить чужой захват через «Администрирование — Отменить захват», но это приведёт к потере несохранённых правок коллеги.
Помещение изменений в хранилище
Когда работа над объектом завершена, изменения нужно поместить в хранилище: правой кнопкой по объекту — «Поместить в хранилище». В диалоге обязательно напишите осмысленный комментарий: что и зачем изменено. Комментарии попадают в историю версий и сильно облегчают поиск причины ошибок спустя месяцы.
Перед помещением рекомендуется проверить конфигурацию на ошибки («Конфигурация — Проверка конфигурации») и убедиться, что база обновляется без конфликтов. Помещать «сырой» код в хранилище — плохая практика: коллеги при следующем обновлении получат нерабочую конфигурацию.
При помещении можно выбрать режим «Помещать захваченные» для всех изменённых объектов сразу. Это удобно при завершении большой задачи, затрагивающей десятки объектов: один диалог, один общий комментарий — и вся порция изменений уходит в хранилище.
Обновление конфигурации из хранилища и история версий
Чтобы получить изменения, внесённые коллегами, используйте «Конфигурация — Хранилище конфигурации — Обновить конфигурацию из хранилища». Платформа сравнит вашу конфигурацию с последней версией в хранилище и загрузит различия. Объекты, захваченные вами, по умолчанию не перезаписываются — платформа предложит варианты объединения.
Обновляться из хранилища стоит регулярно — минимум раз в день и обязательно перед началом новой задачи. Чем дольше ваша локальная конфигурация расходится с хранилищем, тем сложнее будет объединение, особенно если коллеги правили те же модули.
История версий доступна через «Хранилище конфигурации — История хранилища». Здесь видно список версий с авторами, датами и комментариями. По конкретной версии можно посмотреть изменённые объекты, сравнить конфигурации между версиями и при необходимости загрузить конфигурацию выбранной версии в отдельную базу для анализа или отката.
Организация доступа и обслуживание хранилища
Каталог хранилища должен быть доступен всем разработчикам по сети с правами на чтение и запись, но закрыт от посторонних. Для удалённой работы удобнее публикация хранилища через веб-сервер — платформа поддерживает такой режим, и он устойчивее к нестабильным сетевым подключениям, чем прямой доступ к сетевой папке.
Регулярно делайте резервные копии каталога хранилища — это единственная точка хранения всей истории разработки. Потеря хранилища означает потерю истории и возможности корректного обновления баз, подключённых к нему. Копирование выполняйте в момент, когда никто не работает с хранилищем, чтобы снимок был консистентным.
Как проверить результат
В конфигураторе доступны команды захвата и помещения, статус объектов отображается
Команды хранилища неактивны или выдают ошибку доступа к каталогу
В истории хранилища появилась новая версия с вашим комментарием
Версия не создалась, объект остался захваченным без изменений
Конфигурация обновилась, в дереве видны объекты, изменённые коллегами
Появляются сообщения о конфликтах объединения или ошибки обновления
Периодически просматривайте список захваченных объектов («Администрирование — Захваченные объекты»): «зависшие» захваты уволившихся или заболевших сотрудников блокируют работу команды. Также следите за размером хранилища — при активной разработке оно растёт, и иногда имеет смысл сократить глубину хранимой истории штатными средствами.
Что важно запомнить
Цикл работы с хранилищем прост: подключиться, захватить объект, изменить, поместить с комментарием, регулярно обновляться из хранилища. Главные правила безопасности — не отменять захват без сохранения изменений, не отбирать захваты у коллег без согласования и регулярно резервировать каталог хранилища.
Частые вопросы о хранилище конфигурации 1С
Можно ли работать с хранилищем одному разработчику?
Да, и это полезно: хранилище даёт историю версий, возможность сравнения конфигураций между версиями и отката к предыдущему состоянию. По сути, это встроенная система контроля версий, не требующая настройки внешних инструментов.
Что делать, если объект захвачен коллегой, который недоступен?
Администратор хранилища может принудительно отменить захват через «Администрирование — Отменить захват». Перед этим убедитесь, что коллега не имеет несохранённых изменений — они будут потеряны. По возможности сначала попытайтесь связаться с ним или проверить его базу.
Как посмотреть, кто и когда изменил конкретный объект?
Откройте историю хранилища, найдите версии, в которых менялся объект, и посмотрите автора и комментарий. Также можно сравнить две версии конфигурации между собой — платформа покажет различия по объектам и модулям.
Можно ли отключить базу от хранилища и что при этом произойдёт?
Да, через «Отключиться от хранилища» в меню хранилища. Конфигурация станет обычной редактируемой, но связь с историей версий потеряется, и вернуться к работе через то же хранилище можно только повторным подключением с сопоставлением версий. Перед отключением поместите все захваченные изменения.
Чем хранилище 1С отличается от Git?
Хранилище 1С — встроенный механизм платформы с блокировочной моделью (захват объектов), тогда как Git — распределённая система с моделью ветвления и слияния. Для интеграции с Git используются отдельные инструменты выгрузки конфигурации в файлы (например, формат EDT или выгрузка в XML), но это уже другой процесс разработки.