Подключение к хранилищу конфигурации в Конфигураторе 1С 8.3: адреса, права, ошибки и копии

· 9 мин

Содержание

Хранилище 1С открывают из Конфигуратора: Конфигурация → Хранилище конфигурации → Подключиться к хранилищу. В окне подключения указывают адрес хранилища (папку, tcp:// или http://), имя пользователя хранилища и пароль. После этого в дереве конфигурации появятся значки захвата, а команды работы с хранилищем станут активными.

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

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

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

Что даёт хранилище:

  • 🔒 захват объектов — пока объект захвачен одним разработчиком, другие его не изменят;
  • 📜 история версий — каждое помещение становится версией с автором, датой и комментарием;
  • ↩️ откат — любую версию можно сравнить с текущей, выгрузить в .cf или вернуть;
  • 👥 распределение прав — кто только читает, кто правит, кто администрирует.

Данных пользователей (документов, справочников, остатков) в хранилище нет. Там только метаданные, модули, формы и макеты. Физически хранилище — каталог с файлом 1cv8ddb.1CD и служебными папками рядом.

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

Подготовка: что нужно до подключения к хранилищу

Без этих пяти вещей подключение не получится или привяжет не ту базу.

  1. Адрес хранилища. Его даёт администратор хранилища. Это путь к каталогу, адрес tcp:// сервера хранилища или http:// ссылка на веб-публикацию.
  2. Пользователь хранилища и пароль. Это отдельные учётные записи, они не совпадают с пользователями информационной базы и с учётной записью Windows.
  3. Информационная база для разработки. Подойдёт новая пустая база или копия рабочей. Подключать к хранилищу рабочую базу, в которой сидят бухгалтеры, — плохая идея: любое «Обновить конфигурацию базы данных» сразу отразится на людях.
  4. Та же версия платформы. Для сервера хранилища держите версию, совпадающую с версией клиента, иначе соединение отклонят. Для файлового хранилища важно, чтобы его не открывала платформа с номером ниже, чем та, которой его уже сконвертировали.
  5. Доступ к каталогу или порту. Для файлового варианта — права на чтение и запись в папку, для tcp:// — открытый порт сервера хранилища (по умолчанию 1542).

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

Как открыть хранилище 1С: три способа подключения

Окно подключения одинаковое для всех способов. Отличается только строка «Адрес хранилища».

Способ 1. Файловое хранилище на диске или в общей папке

  1. Запустите базу в режиме Конфигуратор.
  2. Откройте конфигурацию: Конфигурация → Открыть конфигурацию.
  3. Выберите Конфигурация → Хранилище конфигурации → Подключиться к хранилищу.
  4. В поле адреса укажите каталог, например D:\Repo\Buh или \\srv-dev\Repo\Buh. Указывается именно папка, а не файл 1cv8ddb.1CD.
  5. Введите имя пользователя хранилища и пароль, нажмите ОК.

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

Файловое хранилище в сетевой папке работает медленно и чувствительно к обрывам связи. Для команды из нескольких человек надёжнее сервер хранилища.

Способ 2. Сервер хранилища по tcp

Сервер хранилища — это служба crserver, она входит в дистрибутив платформы (компонент «Сервер хранилища конфигураций 1С:Предприятия»). Адрес выглядит так:

tcp://srv-dev/Buh
tcp://srv-dev:1642/Buh

Порт пишут, только если он не стандартный 1542. Часть после имени сервера — путь к хранилищу относительно корневого каталога, заданного при запуске службы.

Регистрация службы на сервере (командная строка от имени администратора, в каталоге bin нужной версии платформы):

crserver.exe -instsrvc -port 1542 -d "D:\Repo" -usr "DOMAIN\svc-crserver" -pwd "Пароль"
crserver.exe -start

После регистрации служба видна в services.msc. Если параметры службы смущают, сверьтесь со справкой crserver -help для вашей версии платформы.

Способ 3. Хранилище через веб-сервер по http

Удобно для удалённых разработчиков, когда порт 1542 наружу не открывают. На веб-сервере (IIS или Apache) публикуют файл с расширением .1ccr, внутри которого указан адрес сервера хранилища:

<?xml version="1.0" encoding="UTF-8"?>
<repository connectString="tcp://srv-dev:1542/Buh"/>

Адрес для подключения тогда выглядит так: http://dev.example.ru/repo/repository.1ccr. Модуль веб-расширения должен быть той же версии, что и платформа клиента.

Сравнение способов

СпособКогда выбиратьРиски
Файловый каталогодин-два разработчика в одной сетипорча файла при обрыве связи, медленная работа
tcp:// через crserverкоманда в офисе или по VPNнужна служба и открытый порт
http:// через .1ccrудалённые разработчики без VPNлишнее звено — веб-сервер, нужно HTTPS

Подключение из командной строки

Для скриптов сборки и обновления подключение делают параметрами запуска:

"C:\Program Files\1cv8\8.3.24.1691\bin\1cv8.exe" DESIGNER /F"D:\Dev\Buh" /N"Админ" /P"" ^
 /ConfigurationRepositoryF "tcp://srv-dev/Buh" ^
 /ConfigurationRepositoryN "build" /ConfigurationRepositoryP "Пароль" ^
 /ConfigurationRepositoryUpdateCfg -force /UpdateDBCfg /Out "D:\Logs\update.log"

Номер версии в пути замените на установленный у вас. Пароли в bat-файле держите только для служебного пользователя с правами на чтение.

Права пользователей хранилища 1С

Пользователей заводит администратор хранилища: Конфигурация → Хранилище конфигурации → Администрирование. Первый пользователь появляется при создании хранилища (Создать хранилище), он и становится администратором.

В карточке пользователя три флага прав:

  • ✏️ Захват объектов — можно захватывать объекты и помещать изменения;
  • 🧾 Изменение состава версий — можно управлять версиями в истории: метки, комментарии;
  • 🛡️ Административные функции — управление пользователями, параметрами хранилища, отмена чужих захватов.

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

Практика распределения:

РольЗахватСостав версийАдминистрирование
Разработчик✅——
Ведущий разработчик✅✅—
Администратор хранилища✅✅✅
Сборка, тестировщик———

Заводите каждому человеку свою учётную запись. Общий логин «dev» на троих лишает смысла историю: в ней не видно, кто что поместил.

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

Основные операции после подключения к хранилищу

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

ОперацияЧто делает
Захватить в хранилищеблокирует объект за вами и даёт его править
Поместить в хранилищеотправляет изменения, создаёт версию с комментарием
Отменить захватснимает блокировку без отправки изменений
Получить из хранилищазабирает свежую версию выбранных объектов
Обновить конфигурацию из хранилищазабирает всё, что изменилось с прошлого раза
Сравнить конфигурацию с хранилищемпоказывает расхождения базы и хранилища
История хранилищасписок версий с авторами и датами
Отключиться от хранилищаотвязывает базу, конфигурация в ней остаётся

Рабочий цикл разработчика:

  1. Обновить конфигурацию из хранилища .
  2. Захватить нужные объекты (лучше вместе с подчинёнными — флажок «Рекурсивно» в окне захвата).
  3. Внести изменения, проверить в режиме отладки.
  4. Поместить в хранилище с понятным комментарием: номер задачи и суть изменения.
  5. Выполнить Конфигурация → Обновить конфигурацию базы данных в своей базе.

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

Если хранилище не открывается: ошибки и решения

Диагностика: выберите симптом

Если не помогло

Отключите базу от хранилища и подключите заново. Если ошибка повторяется только у одного разработчика, проверьте его локальный кэш хранилища: при закрытом Конфигураторе удалите временные файлы кэша в профиле пользователя (%LOCALAPPDATA%\1C\1cv8 и %APPDATA%\1C\1cv8, подпапки с длинными именами-идентификаторами). Конфигурация базы при этом не меняется — платформа заново заполнит кэш при следующем подключении.

Если же ошибка у всех и хранилище файловое, файл 1cv8ddb.1CD мог повредиться. Не пытайтесь «чинить» его в рабочем каталоге: сделайте копию папки и работайте с копией, а при неудаче восстанавливайте из резервной копии.

Резервное копирование и восстановление хранилища

Хранилище — единственное место, где лежит история разработки. Если оно погибнет, восстановить её из баз разработчиков нельзя: там есть только последние версии.

Что копировать:

  • 📁 весь каталог хранилища целиком, а не только 1cv8ddb.1CD — служебные папки рядом тоже нужны;
  • 🗂️ для сервера хранилища — корневой каталог из параметра -d, где лежат все хранилища этого сервера;
  • 📦 дополнительно — выгрузку последней версии в файл через Конфигурация → Хранилище конфигурации → Сохранить конфигурацию хранилища в файл.

Как копировать без порчи:

  1. Предупредите разработчиков, что хранилище будет недоступно 5–10 минут.
  2. Остановите службу crserver (для файлового хранилища — убедитесь, что никто к нему не подключён).
  3. Скопируйте каталог в архив с датой в имени.
  4. Запустите службу обратно.

Ночной скрипт для сервера хранилища:

net stop "1C:Enterprise 8.3 Configuration Repository Server"
robocopy "D:\Repo" "E:\Backup\Repo_%date:~6,4%%date:~3,2%%date:~0,2%" /MIR /R:2 /W:5
net start "1C:Enterprise 8.3 Configuration Repository Server"

Имя службы проверьте в services.msc — оно зависит от того, как службу регистрировали. Формат %date% в скрипте рассчитан на русскую локаль Windows (ДД.ММ.ГГГГ).

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

Регламент хранилища у администратора
Выполнено: 0 / 6

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

Можно ли открыть хранилище без информационной базы?
Нет. Хранилище открывается только из Конфигуратора какой-либо базы. Для просмотра достаточно пустой базы без конфигурации.
Как получить конфигурацию из хранилища в файл .cf?
Подключитесь к хранилищу и выберите Сохранить конфигурацию хранилища в файл. Для старой версии откройте «Историю хранилища», выделите версию и сохраните её в файл.
Что будет с захваченными объектами, если разработчик уволился?
Захваты останутся. Администратор хранилища может отменить их, после чего объекты станут доступны другим. Незавершённые изменения в базе уволившегося при этом не попадут в хранилище.
Сколько разработчиков может работать с одним хранилищем?
Жёсткого лимита в несколько человек нет: сервер хранилища рассчитан на команды. Узкое место обычно — скорость сети и диска сервера, а не число пользователей.
Нужна ли лицензия для сервера хранилища?
Отдельной лицензии на crserver не требуется. Лицензия нужна разработчику для запуска Конфигуратора своей базы, как и без хранилища.