Разработка и Конфигурация · 11 мин
Как поместить в хранилище несколько объектов 1С
Разбираем, как поместить в хранилище несколько объектов 1С: помещение по списку, работа через конфигуратор и EDT, типичные ошибки и проверка результата.
При командной разработке конфигурации 1С почти каждый рабочий день заканчивается одной и той же операцией — помещением изменённых объектов в хранилище конфигурации. Если изменений много (форма, модуль объекта, несколько общих модулей и пара ролей), помещать их по одному долго и рискованно: легко забыть часть объектов и оставить хранилище в неконсистентном состоянии. Платформа позволяет захватить и поместить произвольный набор объектов за одну операцию.
Массовое помещение выполняется через диалог работы с хранилищем в конфигураторе или через механизм командной строки пакетного режима. В обоих случаях логика одинакова: сначала объекты захватываются (получают статус «захвачен текущим пользователем»), затем редактируются, после чего помещаются в хранилище одной транзакцией с общим комментарием. Ниже разберём все способы, ограничения и типичные ошибки.
Что нужно проверить перед помещением объектов
Массовое помещение требует подготовки, иначе операция завершится ошибкой или, что хуже, запишет в хранилище нерабочую версию. Первое условие — все объекты, которые вы собираетесь поместить, должны быть захвачены именно вами. Если объект захвачен коллегой, платформа не даст его поместить, и это защита от перезаписи чужих правок.
Второе условие — актуальность локальной конфигурации. Перед помещением выполните получение из хранилища («Получить из хранилища»), чтобы убедиться, что ваши изменения не конфликтуют с уже помещёнными чужими. Если кто-то успел поместить новую версию тех же объектов после вашего захвата, потребуется объединение конфигураций.
Третье — проверка корректности. Запустите проверку конфигурации («Конфигурация → Проверка конфигурации») хотя бы с базовым набором режимов. Синтаксическая ошибка в модуле не всегда блокирует помещение, но сломает обновление у всех остальных разработчиков.
Помещение нескольких объектов через конфигуратор
Основной сценарий выполняется через стандартный диалог хранилища. Откройте меню «Конфигурация → Хранилище конфигурации → Поместить в хранилище». Появится окно со списком всех объектов, захваченных текущим пользователем и изменённых относительно версии хранилища.
В списке отметьте флажками нужные объекты. Если объектов много, удобно пользоваться кнопками групповой установки и снятия пометки, а также отбором по типу метаданных. Обратите внимание: по умолчанию платформа может предлагать поместить все захваченные объекты — снимите отметки с тех, что ещё не готовы (например, недоделанная форма, которую вы захватили «на всякий случай»).
Ниже в диалоге введите комментарий. Один комментарий применится ко всем помещаемым объектам и попадёт в историю хранилища, поэтому пишите его так, чтобы по нему было понятно содержание изменений: номер задачи, суть правки, затронутые подсистемы. После нажатия «ОК» платформа поместит все отмеченные объекты одной операцией и создаст новую версию конфигурации.
- 1Обновите конфигурацию из хранилища, чтобы получить актуальные версии
- 2Убедитесь, что нужные объекты захвачены вами и не захвачены другими
- 3Запустите проверку конфигурации и исправьте ошибки
- 4Откройте «Конфигурация → Хранилище конфигурации → Поместить в хранилище»
- 5Отметьте флажками все готовые объекты, снимите отметки с неготовых
- 6Введите осмысленный комментарий и подтвердите помещение
- 7Проверьте в истории хранилища, что создана новая версия с вашими объектами
Захват нескольких объектов перед правкой
Массовое помещение начинается с массового захвата. Если вы заранее знаете, что будете менять пакет связанных объектов, захватите их сразу: «Конфигурация → Хранилище конфигурации → Захватить в хранилище». В диалоге можно отметить сколько угодно объектов, включая целые ветки дерева метаданных — например, документ со всеми его формами и макетами.
При захвате есть полезная опция «Захватывать рекурсивно» — она подтянет подчинённые объекты (формы, макеты, команды). Это снижает риск ситуации, когда вы поместили модуль объекта, а изменённую форму забыли захватить и поместить.
Учтите обратную сторону: захваченные вами объекты недоступны коллегам. Не захватывайте «про запас» десятки объектов, если планируете менять два-три. В командах это частый источник простоев — разработчик ждёт освобождения объекта, который держат без реальной необходимости.
Помещение объектов пакетным режимом из командной строки
Для автоматизации (ночные сборки, CI-конвейеры) помещение в хранилище выполняется пакетным запуском конфигуратора. Используются параметры командной строки: запуск конфигуратора с указанием базы, команда работы с хранилищем, путь к файлу конфигурации или к выгрузке, логин и пароль пользователя хранилища.
Ключевое ограничение пакетного режима: он работает с конфигурацией целиком (загрузка файла .cf) либо через механизм частичной загрузки из файлов выгрузки в XML. Выборочное помещение «трёх конкретных объектов» напрямую одной командой не делается — для этого нужно сначала сформировать выгрузку только нужных объектов, а затем загрузить её и поместить в хранилище.
1cv8.exe DESIGNER /F"D:\Bases\Dev" /N Разработчик /P <strong><em> /ConfigurationRepositoryF "tcp://server/Repo" /ConfigurationRepositoryN Разработчик /ConfigurationRepositoryP </strong></em> /ConfigurationRepositoryUpdateCfg /DumpConfigToFiles D:\SrcПри работе через выгрузку в файлы (XML-формат) типовой цикл выглядит так: конфигурация выгружается в файлы, изменённые файлы подменяются новыми версиями, выполняется загрузка конфигурации из файлов, затем — помещение в хранилище. Этот подход лежит в основе интеграции хранилища 1С с системами контроля версий вроде Git через сторонние инструменты.
Работа с несколькими объектами в 1C:EDT
В среде разработки 1C:EDT работа с хранилищем организована иначе: проект синхронизируется с хранилищем через операции сравнения и объединения. Чтобы поместить несколько объектов, вы выбираете их в панели навигации (можно выделить список через Ctrl или Shift), вызываете контекстное меню команды работы с хранилищем и выполняете фиксацию изменений.
EDT показывает статусы объектов наглядно: изменённые, захваченные, конфликтующие. Перед помещением обязательно выполните сравнение с версией хранилища — EDT подсветит объекты, где есть входящие изменения от коллег, и предложит объединение. Это снижает риск затереть чужие правки, который в классическом конфигураторе выше.
Сравнение вариантов
Подходит для ручной повседневной работы: наглядный список, флажки, общий комментарий. Ограничение — только интерактивный режим.
Подходит для автоматизации и сборок. Ограничение — работает с конфигурацией целиком или через файлы выгрузки, выборочное помещение требует подготовки.
Подходит для команд с Git-подобным процессом: удобное сравнение и объединение. Ограничение — требует отдельной среды и привычного ей процесса работы.
Типичные ошибки при массовом помещении
Самая частая ошибка — помещение неполного комплекта связанных объектов. Например, разработчик добавил реквизит в документ и изменил форму, но поместил только документ, забыв форму. В хранилище оказывается конфигурация, которая не обновляется у коллег или ведёт себя некорректно. Лечится дисциплиной: перед помещением просматривайте список захваченных объектов целиком.
Вторая ошибка — помещение без предварительного получения изменений. Если коллега успел поместить новую версию, ваше помещение может завершиться ошибкой или потребовать объединения, на которое уйдёт больше времени, чем сэкономленное обновление.
Третья — пустые или бессмысленные комментарии («правки», «fix»). Через месяц по истории хранилища невозможно понять, зачем менялся объект, а поиск версии с нужным изменением превращается в перебор. Комментарий — часть операции, а не формальность.
Как проверить результат помещения
После операции откройте историю хранилища («Конфигурация → Хранилище конфигурации → История хранилища»). Должна появиться новая версия с вашим именем пользователя, комментарием и списком помещённых объектов. Сверьте состав списка с тем, что вы планировали поместить, — все объекты должны присутствовать.
Дополнительная проверка — статусы объектов в дереве конфигурации. После помещения (без опции сохранения захвата) объекты освобождаются, и пиктограммы захвата снимаются. Если объект остался захваченным, хотя вы этого не планировали, проверьте настройки диалога помещения.
Финальный контроль — обновление конфигурации базы данных из хранилища на тестовой копии. Если обновление проходит без ошибок и функциональность работает, помещение можно считать успешным. Для ответственных изменений такую проверку стоит делать всегда, а не только при сомнениях.
Как проверить результат
Новая версия с вашим комментарием и полным списком помещённых объектов
Версия не создана или в списке отсутствуют часть объектов
Захват снят с помещённых объектов
Объекты остались захваченными или помечены как изменённые
Обновление проходит без ошибок, функционал работает
Ошибки обновления или неработающая логика
Частые вопросы
Можно ли поместить объект, захваченный другим пользователем?
Нет, штатно это запрещено: помещать может только тот, кто захватил объект. Администратор хранилища может отменить чужой захват через параметры пользователей хранилища, после чего объект станет доступен. Отмена захвата не переносит чужие изменения — правки коллеги останутся только в его локальной базе.
Что делать, если при помещении появилась ошибка о несоответствии версии?
Это значит, что после вашего захвата кто-то поместил новую версию конфигурации. Получите изменения из хранилища, при необходимости выполните объединение конфигураций, разрешите конфликты вручную и повторите помещение.
Можно ли отменить помещение объектов в хранилище?
Прямой отмены нет: версии в хранилище не удаляются. Откат делается через восстановление предыдущей версии — получение нужной версии из истории и помещение её как новой. Поэтому перед массовым помещением важно проверять состав объектов и результат проверки конфигурации.
Как поместить несколько объектов с разными комментариями?
Одна операция помещения принимает один общий комментарий. Если нужны разные комментарии, разбейте помещение на несколько операций, группируя объекты по смыслу изменений — это, кстати, хорошая практика для читаемой истории хранилища.
Видят ли коллеги мои объекты сразу после помещения?
Нет. Помещённая версия появляется в хранилище, но в рабочие базы коллег она попадёт только после того, как они выполнят получение конфигурации из хранилища и обновление конфигурации базы данных.
Что важно запомнить
Массовое помещение объектов в хранилище 1С выполняется через диалог «Поместить в хранилище» с отметкой нужных объектов и общим комментарием. Перед операцией получите актуальную версию из хранилища, проверьте конфигурацию и убедитесь, что помещаете полный комплект связанных объектов. Результат контролируйте по истории хранилища и обновлению тестовой базы.