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

08.06.22

Разработка - Групповая разработка (Git, хранилище)

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

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

Если заказчиков двое - можно воспользоваться методом, предложенным в публикации //infostart.ru/public/1663203/, но что делать, если их трое и более?

Я давно использую следующее решение: для каждой используемой версии платформы устанавливаю свой сервер хранилища. Сервер хранилища - это же просто служба Windows. На один компьютер их можно установить сколько угодно, лишь бы порты были разные.

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

Далее в реестре (regedit.exe), найдите путь к уже установленной службе (HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\1C: Repository Server) и сохраните раздел в файл.

Любым редактором исправьте в этом файле названия службы, описание - так будет потом проще разбираться.

 

 

Сохраните файл и добавьте данные из него файла в реестр.

Снова зайдите в редактор реестра (regedit) и найдите вновь добавленную ветку.

Теперь необходимо отредактировать ключ Imagepath так, чтобы он указывал на общую для всех версий папку, но использовал уникальный порт, например:

c:\Program Files\1cv8\8.3.21.1302\bin\crserver.exe" -srvc -port 1302 -d D:\Cassaforte\

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

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

Конечно, службу можно добавлять и другим способом - для этого есть множество инструментов командной строки, тут каждый может выбрать по вкусу.

Устанавливать и настраивать доступ через http считаю избыточным - никаких плюсов подключение через http по сравнению с tcp не приносит.

Возможно, используемый порт понадобится добавить в разрешенные в Брендмауре Windows.

Теперь можно получать доступ к одному и тому же хранилищу из разных версий платформы, меняя только путь к хранилищу:

tcp://адрес_компьютера:1302/ИмяХранилища - для версии 8.3.21.1302;

tcp://адрес_компьютера:1710/ИмяХранилища - для версии 8.3.20.1710; и так далее, по необходимости.

Практика использования такого механизма показала, что структуру хранилища компания 1С не меняет, и с одной и той же конфигурацией можно одновременно благополучно работать как с версиями 8.3.11, так и 8.3.21, никаких проблем нет.

В будущем, конечно, что-то может измениться, но работать-то нужно прямо сейчас.

Вступайте в нашу телеграмм-группу Инфостарт

Хранилище конфигурации версия хранилища разные версии

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

Групповая разработка (Git, хранилище) EDT Программист 1С:Предприятие 8 Россия Бесплатно (free)

Синхронизируйте свой проект EDT с хранилищем конфигурации так же легко, как в git клиенте. По кнопке Pull в проект EDT подтягиваются изменения из хранилища, по кнопке Push ваш коммит из git репозитория проекта EDT улетает в хранилище конфигурации.

09.07.2026    1845    DmitryShehovtsev    4    

18

Архивирование (backup) Групповая разработка (Git, хранилище) Системный администратор Программист Бесплатно (free)

Как дать возможность каждому разработчику 1С вести разработку, тестирование и оптимизацию на собственной полноразмерной копии базы и при этом не тратить миллиарды рублей и тысячи часов на развертывание тестового окружения, а так же экономить дисковое пространство? Расскажем о том, как с помощью инструмента Database Lab получать полноразмерные копии базы 1C на СУБД PostgreSQL за считанные секунды (даже в случае использования многотерабайтных баз).

15.12.2025    10657    nasonkin    18    

31

Инструменты администратора БД Групповая разработка (Git, хранилище) Обновление 1С Системный администратор Программист 1С:Предприятие 8 1С:Комплексная автоматизация 2.х 1С:Библиотека стандартных подсистем Абонемент ($m)

Обработка, объединяющая в себе использование инструментов БСП по администрированию кластера серверов и запуска скриптов для автоматического обновления конфигурации из хранилища.

4 стартмани

17.11.2025    2979    14    KovrovtsevAS    0    

12

Групповая разработка (Git, хранилище) Бесплатно (free)

Проектная разработка в 1С живет в условиях жестких дедлайнов, меняющихся команд и нестабильных CI/CD. В статье показываем, как быстро и без лишних затрат внедрить Git на ERP-проектах, продать идею себе и команде и избежать типичных подводных камней. Разберем ветвление, подходы к командной работе, интеграцию с таск-трекерами и особенности тяжелых конфигураций.

04.09.2025    21611    bozo    42    

12

EDT Групповая разработка (Git, хранилище) Программист 1С:Предприятие 8 Бесплатно (free)

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

04.08.2025    15068    ZigRinat85    54    

53

DevOps и автоматизация разработки Групповая разработка (Git, хранилище) Программист 1С:Предприятие 8 1С:Библиотека стандартных подсистем Абонемент ($m)

Позволяет проектировать и выполнять сценарии, состоящие из команд 1С, Git и CMD, а также решать конфликты слияния напрямую из 1С с помощью KDiff3. Предустановлен набор команд для автоматизации сборки CFE-файлов.

1 стартмани

29.07.2025    5768    9    gorsheninsn    6    

29
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. ImHunter 350 08.06.22 17:39 Сейчас в теме
Собственно, плюс. За предпоследний абзац, в основном.
А почему не стали пользоваться режимом совместимости хранилищ?
2. curdate 53 08.06.22 18:02 Сейчас в теме
(1) Режим совместимости - это, насколько я помню, про структуру хранения данных. Какой не выбери, он все равно не позволит подключаться разным версиям платформы к одному хранилищу.
3. user1677685 09.06.22 10:53 Сейчас в теме
Зачем службу через реестр создавать, когда можно быстро создать службу на выбранном порту с выбранной версией 1С?
Во вложении пример, можно переделать определение портов, если хочется.
Прикрепленные файлы:
Create_1C_RepositoryOnPort.cmd.txt
nsirotkin@mail.ru; user621724_Dimav1979; +2 Ответить
4. curdate 53 09.06.22 11:26 Сейчас в теме
(3) Так исторически сложилось:). Я использую эту схему с множественными службами хранилища еще с 8.3.1 (на 8.2 не было контроля версии при подключении); тогда решить проблему нужно было быстро, ведь все работать-то должно было еще вчера.
Ведь в начале это была гипотеза - а будет ли работать 2 службы? Это же было не очевидно, что заработает. Проверил тогда по быстрому, первым пришедшим в голову методом. А потом просто использовал готовое - нет смысла оптимизировать минутную задачу, которую нужно выполнять даже не каждый месяц. Тем более, использование командной строки не добавит ни скорости, ни надежности, ни наглядности.

Но если начинать что-то строить с нуля, да без спешки - почему бы и не углубиться. Спасибо за cmd, пригодится:)
5. user1677685 09.06.22 11:42 Сейчас в теме
(4) Ну вот у меня в итоге за несколько лет простой cmd превратился в универсальный инструмент создания службы. Такие же созданы для службы 1С сервера, службы RAS, переопределения Applications, ComConnector, AdminConsol - удобно, когда на нескольких серверах устанавливаешь одну и ту же версию для предварительного тестирования и надо отдельную службу.
6. SerVer1C 1104 09.06.22 16:02 Сейчас в теме
Это работает до тех пор, пока шаг влево-вправо не сделали.
7. yermak 51 14.06.22 08:41 Сейчас в теме
а не опасненько так делать? Что на это скажут разработчики фирмы 1с?
8. curdate 53 14.06.22 13:40 Сейчас в теме
(7) Волков бояться - в лес не ходить мучиться с разными версиями или работать без хранилища.
А разработчикам мы ничего не расскажем.
9. 7OH 70 14.06.22 18:47 Сейчас в теме
(1)
"Устанавливать и настраивать доступ через http считаю избыточным - никаких плюсов подключение через http по сравнению с tcp не приносит."
А как вы у заказчиКОВ то подключаетесь к созданным дома хранилищам ?
Вот как раз http в этом случае удобно.
Дома дописал - оттуда подключился и только забрал изменения, а не всю конфу через удаленку кидать.
10. curdate 53 14.06.22 19:18 Сейчас в теме
(9) tcp же, через внешний ip
GYlgamesh; +1 Ответить
Для отправки сообщения требуется регистрация/авторизация