Обновление типовой конфигурации в EDT на примере + скрипт

19.01.26

Разработка - EDT

На примере рассмотрим одну из стратегий обновления проекта на новый релиз поставщика через 1С:EDT.

Основные принципы

1. Конфигурация поставщика ведется в отдельной ветке (vanilla).

2. Процесс обновления на новый релиз поставщика сводится к тому, чтобы загрузить новый релиз в ветку vanilla, затем слить vanilla в основную ветку разработки (develop, master).

3. Слияние ветки vanilla в основную ветку выполняется через трехстороннее сравнение: vanilla, основная ветка, их общий предок.


Подготовка

Для демонстрации подготовим пример с проектом на ЗУП КОРП. Проект создадим с нуля.

Последовательность шагов

1. В промежуточную базу загружаем .dt из поставки типового релиза. Снимаем конфигурацию с поддержки.

2. Создаем рабочую область EDT. Добавляем проект конфигурации импортом конфигурации из промежуточной базы.

3. Настраиваем групповую разработку из EDT: создаем репозиторий, делаем первый коммит.

4. Выполняем оптимизацию формата хранения файлов проекта.

5. Создаем новую ветку: vanilla.

Промежуточный итог. Ветки master и vanilla на одном коммите и соответствуют типовой конфигурации, наших доработок в проекте еще нет. История репозитория на данном этапе:

 

 

6. Внесем в master несколько доработок. Добавим:

- новые объекты (справочник, регистр сведений и пр.)

- новое значение в типовое перечисление

- новые типы в определяемые типы

- новые методы в типовой общий модуль

- свой код в типовые методы общего модуля

В дальнейшем посмотрим, как эти изменения отразятся на процессе обновления на новый релиз поставщика.


Итог. Ветки master и vanilla разошлись. В ветке master теперь типовая конфигурация с нашими доработками, в vanilla - и сейчас и в дальнейшем - только типовая конфигурация. История репозитория:

 

 

Далее выполним первое обновление на новый релиз поставщика.


Обновление на новый релиз поставщика

Последовательность шагов

1. Подготовка промежуточной информационной базы.
    1.1. Откройте информационную базу в режиме конфигуратора.
    1.2. Загрузите информационную базу из файла .dt, входящего в поставку загружаемого релиза поставщика.
    1.3. Снимите конфигурацию с поддержки.

2. Подготовка рабочей области EDT для работы с vanilla

    2.1. Создайте отдельную рабочую область для работы с vanilla (если не сделали этого ранее).
    2.2. Откройте рабочую область.
    2.3. Убедитесь, что репозиторий на ветке vanilla.
    2.4. Запомните имя проекта и его версию платформы.
    2.5. Удалите проект с очисткой содержимого на диске.

 
 Скриншоты


3. Импорт конфигурации нового релиза
    3.1. Восстановите проект конфигурации в рабочей области импортом конфигурации из промежуточной базы, в которую ранее загрузили новый релиз. В форме настроек импорта повторите имя проекта и версию платформы.

4. Проект конфигурации и репозиторий.
    4.1. Добавьте вновь созданный проект обратно в репозиторий.

 
 Скриншоты

 

5. Работа с изменениями.
    5.1. Отмените удаление файлов настроек проекта, расположенных в каталоге <имя_проекта>/.settings (если есть).
    5.2. Выполните оптимизацию формата хранения файлов проекта.
    5.3. Зафиксируйте изменения. Отправьте коммит в удаленный репозиторий. На этом работа с веткой vanilla завершена.

 
 Скриншоты

 

6. Загрузка обновления в master.     
     6.1. Откройте рабочую область EDT.
     6.2. Убедитесь, что репозиторий на ветке master.
     6.3. Актуализируйте состояние отслеживаемых удаленных веток (Получить из origin).
     6.4. Запустите слияние с удаленной веткой vanilla.

 
 Скриншоты

 

7. Работа в редакторе сравнения/объединения.
     7.1. Отметьте к слиянию объекты, ошибочно пропущенные механизмом слияния.
     7.2. Разрешите конфликты слияния (если есть).
     7.3. Убедитесь, что механизм слияния не отметил к перезаписи нетиповые доработки.
     7.4. Завершите слияние.
     7.5. Отправьте в удаленный репозиторий созданный коммит слияния.

 
 Скриншоты

 

8. Проверка слияния (рекомендуется).
    8.1. Сравните состояние master и vanilla. Если слияние прошло успешно, в окне сравнения с фильтром трехстороннего сравнения будут только наши доработки.

 
 Скриншоты

Итог. В ветке vanilla актуальный релиз поставщика. В ветке master актуальный релиз поставщика с нашими доработками. Дальнейшие обновления на релизы поставщика выполняются по тому же сценарию.

История репозитория:


Дополнительно

1. В примере изменения вносятся в master напрямую. Это упрощение. На практике, как правило, используются feature-ветки, в т.ч. для слияния с vanilla. Плюс, ваше flow может содержать и другие ветки - например, develop.

2. В примере перед загрузкой в vanilla нового релиза проект предварительно очищается. Можно сказать, что мы полностью подменяем состояние проекта в vanilla новым состоянием. Но для загрузки нового релиза в vanilla можно пойти другим путем - импортировать изменения из конфигурации в текущее состояние проекта без его очистки. Тогда запустится процесс слияния конфигурации базы с проектом.

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

3. В примере новый релиз загружается в промежуточную базу из .dt. Это не обязательно. Если демо-данные в промежуточной базе не нужны, можно использовать загрузку конфигурации из .cf.

4. В примере выполняется оптимизация формата хранения файлов проекта. Это необязательно, но рекомендуется. Оптимизация в данном случае выполняет функцию нормализации файлов. Это имеет смысл, т.к. работа с проектом из EDT и работа через импорт конфигурации из базы всегда будут иметь разный результат на уровне файлов. Оптимизация же во многом приводит файлы проекта к одному "формату". Это позволяет убрать из коммитов фантомные изменения, вызванные импортом конфигурации из базы.

5. В некоторых больших проектах может потребоваться несколько итераций оптимизации формата хранения файлов. Проверить это просто: запустите оптимизацию формата хранения второй раз - если в Git снова есть изменения - это ваш случай. Вероятно, проблема на стороне EDT. Следует учитывать в работе.

 

Скрипт

Шаги с 1 по 5 могут быть автоматизированы. В качестве примера приведу скрипт на PowerShell.

 
 Тело скрипта
 
 Фрагмент вывода
 

По результату выполнения скрипта можно сразу перейти к слиянию vanilla в master (шаги с 6 по 8).

Если доработки в ваш проект вносятся строго в расширение или изменения в конфигурации минимальны и могут быть воспроизведены скриптом на уровне файлов, вы можете пойти дальше и автоматизировать весь процесс обновления.

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

См. также

EDT Программист Бесплатно (free)

Показываем, как сочетание небольшого собственного продукта и EDT помогает решать реальные задачи разработки, а не просто следовать моде. Делимся опытом перехода от монорепозитория к форкам, рассказываем об архитектуре решения и особенностях командной работы. А также раскрываем плюсы и минусы EDT, которые стоит учитывать при выборе среды для продуктовой разработки.

26.01.2026    612    nalivai-chai    0    

6

Обновление 1С НДС 22% Программист Бухгалтер Пользователь 1С 8.3 1С:Управление торговлей 11 Россия НДС Абонемент ($m)

Предлагается практический мануал, позволяющий детально рассмотреть обновление УТ 11.5 для работы как с оптом, так и с розницей.

10 стартмани

15.01.2026    1773    5    aximo    0    

7

Обновление 1С Программист 1С 8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Абонемент ($m)

Позволяет получить список внешних отчетов/обработок, которые перестали работать после обновления конфигурации.

1 стартмани

17.12.2025    556    15    Efimoff    3    

5

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

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

4 стартмани

17.11.2025    1748    10    KovrovtsevAS    0    

9

Обновление 1С Программист 1С:Предприятие 8 Бесплатно (free)

Обновление конфигураций с расширениями конфигураций.

13.11.2025    2039    vasilev2015    15    

8

EDT Программист Стажер 1С:Предприятие 8 Россия Абонемент ($m)

Данная публикация посвящена работе с новым функционалом в 1С:EDT, а точнее ИИ 1С:Напарник. Этот материал будет полезен для начинающих программистов, а также для программистов, которые желают научиться работать в 1С:EDT с применением ИИ.

2 стартмани

05.11.2025    6316    chuevsf    7    

9

Нейросети Рефакторинг и качество кода Обновление 1С Программист Бесплатно (free)

С ростом качества работы нейросетей и упрощением их интеграции мы решили попробовать внедрить их в процессы обновления 1С. За последний год через сервис обновлений нетиповых конфигураций 1С нашей компании прошло порядка пяти тысяч проектов, четверть из которых включала расширения. Автоматизацию обновления расширений — в частности, методов модулей расширений — мы выбрали в качестве первого шага. В этой статье расскажем про настройку модели и промпта исходя из поставленной задачи и как нейросеть помогла сократить затраты на реальных проектах.

24.10.2025    3337    1c-izh    6    

9
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. triviumfan 102 20.01.26 14:40 Сейчас в теме
Интересно, а кто именно занимается обновлением конфы в таком технологическом стеке?
8. eakomarov 23 24.01.26 15:14 Сейчас в теме
(1) Самая сложная часть процесса - это слияние. Поэтому, как правило, специалист подбирается по тому же принципу, что и при классическом обновлении через конфигуратор. Кто-то, кто более-менее в контексте выполненных доработок, знает нюансы. Тот, кто сможет решить конфликты слияния.
2. Viktor_Ermakov 397 21.01.26 08:30 Сейчас в теме
Уважаемый автор, спасибо за статью. А Вы смотрели методики Никиты Арипова видео? Ваша методика чем то отличается от его методики? Если да, то чем, и почему это лучше? Спасибо!
3. fatman78 21 22.01.26 15:00 Сейчас в теме
(2) Ссылка не открывается.
4. Viktor_Ermakov 397 22.01.26 16:16 Сейчас в теме
(3) Это Ютуб, возможно у Вас он не работает
5. dddxddd 22.01.26 23:44 Сейчас в теме
(4) Страница недоступна
Сайт infostart.ru отправил недействительный ответ.
Код ошибки: ERR_INVALID_REDIRECT
7. eakomarov 23 24.01.26 15:05 Сейчас в теме
Виктор, добрый день! Ссылка не работает. По ключевым словам на ютубе тоже не нашел. Киньте ссылку еще раз, пожалуйста.
6. PerlAmutor 161 24.01.26 06:58 Сейчас в теме
Сколько занял весь процесс по времени?

Я пользуюсь чистым git и консолью для этих целей (ERP). Обычно укладываюсь в 3-4 часа, где основная масса времени уходит на выгрузку/загрузку XML.
9. eakomarov 23 24.01.26 15:31 Сейчас в теме
(6) Время сильно зависит от ресурсов компьютера, т. к. процесс в основном фоновый: запускаешь очередной шаг и уходишь на другие задачи. Плюс в оценке следует учитывать объём доработок в типовом коде, а также закладывать люфт на глюки EDT.
10. eakomarov 23 24.01.26 15:33 Сейчас в теме
(6) Слияние vanilla в основную ветку разработки тоже делаете через git, без EDT?
11. PerlAmutor 161 24.01.26 18:57 Сейчас в теме
(10) Мои репозитории все временные, лишь на момент необходимости обновления. Все слияния делаю в git, потом загружаю в файловую базу из XML, докидываю конфигурацию поставщика. А дальше уже выгружаю .cfник, накатываю на контур разработки, тестирую на ошибки. Там правлю, снова выгружаю и уже накатываю на прод через сравнение объединение или через полную загрузку с отключением от хранилища и его пересозданием.
Для отправки сообщения требуется регистрация/авторизация