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

22.04.14

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

Данное изложение на примерах демонстрирует работу с хранилищем конфигураций из пакетного режима

Данное изложение на примерах демонстрирует работу с хранилищем конфигураций из пакетного режима*.
*Самый простой вызов командной строки для пакетного режима в Windows - сочетание клавиш Win+R. 

 
например:
1cv8.exe designer  /F "D:\1cBase\morpho" /N "Admin" /P "abc" /ConfigurationRepositoryF "D:\Storage\morpho" /ConfigurationRepositoryN "AdminStorage" /ConfigurationRepositoryP "qwerty" /ConfigurationRepositoryAddUser -User Lex -Rights Administration
 
где 
1cv8.exe designer  /F "D:\1cBase\morpho" /N "Admin" /P "abc" 
- путь к запуску 1С (вместо 1cv8.exe поставьте полный путь) и параметры подключения к ИБ конфигуратором. Она будет неизменной.
2-ая часть - 
/ConfigurationRepositoryF "D:\Storage\morpho" /ConfigurationRepositoryN "AdminStorage" /ConfigurationRepositoryP "qwerty"
- параметры подключения к хранилищу конфигурации.
заканчивает строку используемое действие.

В качестве примера используется конфигурация на платформе 8.3.4.465. Взял 2 информационных базы для разбора примеров.
 
1.Создаём хранилище конфигураций:
/ConfigurationRepositoryCreate
 
1cv8.exe designer  /F "D:\1cBase\morpho" /N "Admin" /P "abc" /ConfigurationRepositoryF "D:\Storage\morpho" /ConfigurationRepositoryN "AdminStorage" /ConfigurationRepositoryP "qwerty" /ConfigurationRepositoryCreate 
 
Если конфигурация на поддержке, то следует использовать суффикс с указанием действий с этой поддержкой, например:
...-AllowConfigurationChanges -ChangesAllowedRule ObjectIsEditableSupportEnabled -ChangesNotRecommendedRule ObjectIsEditableSupportEnabled
Возможно, что вся строка уже целиком не помещается в командную строку Windows. Но её вызов можно употребить либо в .bat-файле либо в вызвав из 1С через ЗапуститьПриложение().
Пользователь, добавляемый при создании, всегда будет администратором.
При таком вызове конфигурация будет подключена к хранилищу и останется подключённой (и только в этом случае, о чём ниже). Чтобы не подключаться - добавьте ещё -NoBind.
 
2.Добавление ещё одного пользователя
/ConfigurationRepositoryAddUser
 
1cv8.exe designer  /F "D:\1cBase\morpho" /N "Admin" /P "abc" /ConfigurationRepositoryF "D:\Storage\morpho" /ConfigurationRepositoryN "AdminStorage" /ConfigurationRepositoryP "qwerty" /ConfigurationRepositoryAddUser -User "DirectorStorage" -Pwd "qwerty" -Rights Administration

Если в момент добавления пользователя будет открыт конфигуратор с подключением к хранилищу - соответственно, подключения не произойдёт и пользователь добавлен не будет. Например, откройте 2-ую конфигурация, подключитесь вновь созданным пользователем DirectorStorage и выполните:
C:\1Cv\8.3.4.465\bin\1cv8.exe designer  /F "D:\1cBase\morpho_res" /N "Admin" /P "abc" /ConfigurationRepositoryAddUser -User "ManagerStorage" -Pwd "qwerty" -Rights Administration
Пользователь ManagerStorage добавлен не будет.
 
3.Отключиться от хранилища
/ConfigurationRepositoryUnbindCfg
 
Подключитесь 2-ой конфигурацией, откройте Конфигурация - Хранилище конфигурации - Администрирование хранилища - [Подключения]
 
(Должны быть 2 подключения. Если не так, то подключитесь 1-ой конфигурацией другим пользователем - AdminStorage и закройте 1-ый конфигуратор).
Выполните:
 
1cv8.exe designer  /F "D:\1cBase\morpho" /N "Admin" /P "abc" /ConfigurationRepositoryUnbindCfg -force
 
и обновите список:
 
(Здесь суффикс -force указывает, что можно игнорировать всё захваченное).
 
4.Обновление конфигурации из хранилища.
/ConfigurationRepositoryUpdateCfg
 
Откройте 1-ую конфигурацию без подключения к хранилищу и внесите любые изменения (ну, например, добавьте константу). Закройте и выполните:
 
1cv8.exe designer  /F "D:\1cBase\morpho" /N "Admin" /P "abc" /ConfigurationRepositoryF "D:\Storage\morpho" /ConfigurationRepositoryN "AdminStorage" /ConfigurationRepositoryP "qwerty" /ConfigurationRepositoryUpdateCfg -force
 
Догадались, что -force - это средство от лишних сложностей и вопросов?
 
5.Снять конфигурацию в файл:
/ConfigurationRepositoryDumpCfg
 
[без комментариев...]
 
1cv8.exe designer  /F "D:\1cBase\morpho" /N "Admin" /P "abc" /ConfigurationRepositoryF "D:\Storage\morpho" /ConfigurationRepositoryN "AdminStorage" /ConfigurationRepositoryP "qwerty" /ConfigurationRepositoryDumpCfg "d:\temp\xxx.cf"
 
6.Снять отчёт по версиям хранилища:
/ConfigurationRepositoryReport
 
1cv8.exe designer  /F "D:\1cBase\morpho" /N "Admin" /P "abc" /ConfigurationRepositoryF "D:\Storage\morpho" /ConfigurationRepositoryN "AdminStorage" /ConfigurationRepositoryP "qwerty" /ConfigurationRepositoryReport "d:\temp\ver.mxl"
 
Плохо, что отчёт снимается в moxel-е. Что с ним дальше делать?
 
Можно ли подключиться к хранилищу? Нет. Кроме случая создания хранилища по /ConfigurationRepositoryCreate. Только тогда конфигурация подключается к хранилищу и остаётся подключенной. Сравните: создайте новое хранилище (пункт 1), добавьте пользователя (пункт 2), зайдите во 2-ую конфигурацию, подключитесь 2-ым пользователем, перейдите в администрировании в подключения - подключения произведены к обоим информационным базам разными пользователями.
К сожалению, подключится через пакетный режим нельзя. Для этого существует только интерактивный режим. Когда-нибудь и это придумают...

Хранилище конфигураций Storage

См. также

SALE! 50%

1С-программирование DevOps и автоматизация разработки Групповая разработка (Git, хранилище) DevOps для 1С Программист Стажер Платформа 1С v8.3 Платные (руб)

Использования систем контроля версий — стандарт современной разработки. На курсе научимся использованию Хранилища 1С и GIT при разработке на 1С:Предприятие 8. Разберем подходы и приемы коллективной разработки, научимся самостоятельно настраивать системы и ориентироваться в них.

4900 2450 руб.

29.06.2022    11955    100    4    

132

Групповая разработка (Git, хранилище) Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Когда в хранилище одновременно разрабатывают несколько команд, сортировка сделанного и несделанного при формировании релиза и проведение code review по задачам превращаются в непроходимый квест. В таких случаях нужен бранчинг. Расскажем об опыте перехода на новую схему хранения кода для ИТ-департамента.

23.09.2024    2921    kraynev-navi    2    

25

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

Называть Git новой технологией – уже смешно, но для многих 1С-ников это действительно «новое и неизведанное». Расскажем о плюсах и минусах двух главных систем контроля версий в мире 1С: Git и хранилища.

17.09.2024    7385    Golovanoff    69    

26

Групповая разработка (Git, хранилище) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

05.09.2024    2237    ardn    12    

15

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

Заказчики любят EDT+Git за прозрачность и контроль качества. А у разработчиков есть две основные причины не любить EDT – это тормоза и глюки. Расскажем о том, что нужно учесть команде при переходе на EDT+Git.

14.08.2024    7703    lekot    34    

8

Групповая разработка (Git, хранилище) Программист Платформа 1С v8.3 Бесплатно (free)

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

05.08.2024    4361    sinichenko_alex    16    

25

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

Про изменения и новинки в агрегаторе открытых проектов OpenYellow, которые появились с момента его создания: про портал, Github и Telegram

15.07.2024    3294    bayselonarrend    8    

24
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. gubanoff 63 23.04.14 18:23 Сейчас в теме
В версии 8.2 при работе с хранилищем из командной строки была ошибка. Для команды ConfigurationRepositoryReport отчет возвращался без группировки по версиям. Хотя в справке есть
/ConfigurationRepositoryReport <имя файла> [-NBegin <номер версии>] [-NEnd <номер версии>] [-GroupByObject] [-GroupByComment] — построение отчета по истории хранилища. Если параметры группировки не указаны и режим совместимости указан "Не используется", то отчет формируется с группировкой по версиям. В режимах совместимости "Версия 8.1" и "Версия 8.2.13" отчет формируется с группировкой по объектам. Если конфигурация базы данных отличается от редактируемой по свойству совместимости, при обработке командной строки учитывается значение режима совместимости конфигурации базы данных.

<имя файла> — имя файла, в который выводится отчет;
NBegin — номер сохраненной версии, от которой начинается строиться отчет;
NEnd — номер сохраненной версии, по которую строится отчет;
GroupByObject — признак формирования отчета по версиям с группировкой по объектам;
GroupByComment — признак формирования отчета по версиям с группировкой по комментарию.

Показать
Не проверяли, на новой платформе остался этот глюк?
2. gubanoff 63 23.04.14 18:26 Сейчас в теме
Плохо, что отчёт снимается в moxel-е. Что с ним дальше делать?

А тут, кстати, все нормально. Можно его анализировать, прочитав через ТабличныйДокумент.
ТабДок.Прочитать(ПутьКФайлу); ПерваяКолонка = СокрЛП(ТабДок.Область(ТекСтрока, 1, ТекСтрока, 1).Текст); 
3. Franco 83 24.04.14 13:56 Сейчас в теме
4. be-may 25.04.14 08:47 Сейчас в теме
у меня почему-то не получается подключиться таким образом к внешнему хранилищу?
Вы не пробовали ?
5. Franco 83 25.04.14 09:43 Сейчас в теме
(4) be-may,
самоцитата
'
Можно ли подключиться к хранилищу? Нет. Кроме случая создания хранилища по /ConfigurationRepositoryCreate. Только тогда конфигурация подключается к хранилищу и остаётся подключенной.
...
К сожалению, подключится через пакетный режим нельзя. Для этого существует только интерактивный режим. Когда-нибудь и это придумают...
'
6. spenser123 05.04.17 17:40 Сейчас в теме
пытаюсь сделать bat-ник для сохранения CF в файл (чтобы повесить его в винде в задание ночью, когда не работаю).
Проблема как раз с хранилищем... все срабатывает - запускает С-ку, передают параметры DepotF, DepotN, DepotP, но во время запуска batника - вылазиет 1С ка с 1 единственной целью - показать мне окошко подключения к хранилищу и там, путь к хранилищу пуст, пользователь и пароль тоже, но даже не это напрягает, а то, что батник не работает пока руками не нажмешь кнопку "Отмена" окошка подключения к хранилищу...
7. outcase 11.03.20 21:26 Сейчас в теме
а как выгрузить конкретную версию из храна?

UPDATE: -v <номер версии хранилища> v — номер версии, если номер версии не указан, или равен -1, будет сохранена последняя версия.
8. kievanton 29.05.20 07:43 Сейчас в теме
С версии 8.3.6 что уже есть метод ConfigurationRepositoryBindCfg для подключения базы к хранилищу

"Для пакетного режима запуска конфигуратора реализована возможность подключения ранее не подключенной информационной базы к хранилищу конфигурации (ключ командной строки запуска /ConfigurationRepositoryBindCfg)."
9. SagittariusA 30.09.20 14:39 Сейчас в теме
Просто оставлю это тут. Для запуска конфигуратора и подключения к хранилищу:
"C:\Program Files (x86)\1cv8\common\1cestart.exe" CONFIG /S"СерверБазы\ИмяБазыНаСервере" /N"ИмяПользователяОтБазы" /P"ПарольОтБазы" /ConfigurationRepositoryF"ПутьКХранилищу" /ConfigurationRepositoryN"ПользовательХранилища" /ConfigurationRepositoryP"ПарольХранилища"
Cohap; DoctorRoza; Key-Zed; marku; Lapitskiy; sam441; shetill; BairamovTM; +8 Ответить
10. frkbvfnjh 805 02.11.21 14:55 Сейчас в теме
А нельзя как то минуя конфигуратор выгрузить с хранилища? Это же писец, двойную авторизацию делать, да еще и конфигуратор должен быть закрыт. Капец, 21 век, а все на шарнирах работает
11. Dansur 262 23.11.21 10:14 Сейчас в теме
(10) Может и можно, ведь по сути хранилище это файловая база, только немного специфическая.
Если есть острая необходимость то я бы повертел обработки Валерия Агеева (awa), Царствия ему небесного.
Вот примеры наработок использующих это.

https://infostart.ru/public/645512/
12. frkbvfnjh 805 23.11.21 13:19 Сейчас в теме
(11) Оу, спасибо, не знал что такое есть
Оставьте свое сообщение