diff1C - помощник обновления модифицированных конфигураций (exe)

20.02.23

База данных - Обновление 1С

Расширение возможностей сравнения/объединения конфигураций: 1. Когда база была обновлена криво, и "дважды измененные" работают плохо. Автоматически применяет изменения, если в модуле нет комментариев доработки (типа //+). 2. Когда требуется прикрутить P4Merge к двухстороннему сравнению/объединению (включая расширения).

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
diff1C
.exe 5,97Mb
17 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Исходники: https://github.com/tetraren/diff1C

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

Поддерживает как трехсторонее, так и двухстороннее объединение.

 

Суть работы:

Идея очень проста. Предполагается, что все доработки оформлены комментариями с отметкой разработчика. Примерно так

 

 

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

Таким образом большинство модулей объединяется автоматически, а там, где нужен ручной контроль - он остается под вашим контролем в полной мере. 

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

Настройка:

Зайти в конфигуратор -> Сервис -> Параметры -> Сравнение/объединение -> Добавить

Объединение двух файлов:

-keywords "//#,//+" -exe .\P4Merge\p4merge.exe -log .\diff1c.log -tbase %baseCfgTitle -tnew %secondCfgTitle -base %baseCfg -new %secondCfg -merge %merged

Трехстороннее объединение:

-keywords "//#,//+" -exe .\P4Merge\p4merge.exe -log .\diff1c.log -tbase %baseCfgTitle -tnew %secondCfgTitle -told %oldVendorCfgTitle -old %oldVendorCfg -base %baseCfg -new %secondCfg -merge %merged

 

Должно получиться примерно так:

 

 

В приведенных примерах выше (просто как пример) программа ищет комментарии //# и //+, лог пишет в diff1c.log в папке программы, PMerge расположен в подпапке .\P4Merge

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

P4Merge можно скачать тут https://www.perforce.com/downloads/visual-merge-tool

Полный комплект (с P4Merge, не требует установки) - тут: https://github.com/tetraren/diff1C/releases/tag/v1.0.0

Протестировано на 1С:ERP.Управление холдингом 3.1.10.8 (сильно доработанной, естественно).

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

обновление типовых

См. также

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

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

4 стартмани

17.11.2025    608    1    KovrovtsevAS    0    

7

Обновление 1С Программист 1С v8.3 Бесплатно (free)

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

13.11.2025    1015    vasilev2015    15    

6

Обновление 1С Программист 1С v8.3 1С:Бухгалтерия 3.0 Россия Абонемент ($m)

Обработка, загружающая по расписанию пакет правил обмена в случае их изменения из установленного в настройках каталога.

2 стартмани

27.10.2025    519    2    cheiser1982    2    

1

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

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

24.10.2025    1935    1c-izh    6    

6

Обновление 1С Рефакторинг и качество кода 1С v8.3 Абонемент ($m)

Анализ конфигураций - позволяет проверять любые конфигурации и расширения на наличие ошибок, связанных с вызовом экспортных функций и процедур общих модулей и модулей менеджеров объектов. Проверяются ошибки: 1) Метод объекта не обнаружен 2) Недостаточно фактических параметров. 3) Слишком много фактических параметров. Рекомендуется выполнять при подготовке обновлений. Анализ расширений - позволяет выводить подробный количественный состав расширений по объектам, определить случаи пересечения одного и того же функционала в разных расширения, выявить использование в модулях аннотации "вместо".

10 стартмани

17.10.2025    4641    21    Suker86    13    

19

Обновление 1С Программист 1С v8.3 Бесплатно (free)

Как быстро починить обновление при ошибках в данных без использования внешних обработок.

13.10.2025    3918    VetalDV    7    

8

Обновление 1С Программист 1С v8.3 Бесплатно (free)

При обновлении конфигураций ЕРП/КА/УТ типовыми обновлениями можно получить ошибку  Превышен максимальный расход памяти сервера за один вызов". С чем это связано? Рассмотрим исправление этой ошибки.

18.08.2025    4222    iolko    10    

20
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. EvgenAlKuznetsov 20.02.23 17:12 Сейчас в теме
Или я что то не догоняю или автор придумал то, что уже заложено в штатный функционал - перенос изменений через расширения (&ИзменениеИКонтроль + KDiff). Я таким методом вернул "под замок" изменённую БП и ЗУП, изменения вывел в расширение и теперь поддерживать в актуальном состоянии гораздо проще.
2. v8_088 20.02.23 17:57 Сейчас в теме
(1) Не все конфы поддерживают расширения.
Например на обычных формах перенеси ;)
3. partizand 142 20.02.23 20:09 Сейчас в теме
Непонятно, чем это отличается от "дважды изменённых"?
4. tetraren 41 20.02.23 20:22 Сейчас в теме
(3) Дважды измененное может не содержать ваших изменений, это могут быть следы обновления с предыдущих типовых или "частичные обновления", когда в старую типовую добавляются куски новой, чтобы по-быстрому решить текущую проблему.

Вообще, при обновлении криво обновленной ранее конфы - очень актуально. Ради этого и делалось изначально, к слову.

Ну и бонусом - использовать P4Merge на двухстороннем сравнении (т.к. из коробки он умеет только трехстороннее). Забавно, но эту фичу куда чаще использую, чем трехстороннее. Удобно накатывать свои изменения там, где еще и другие активно правят - изменений куча, но важны только те, где есть твои комменты. Программа в этом помогает.
5. zabaluev 466 06.03.24 16:12 Сейчас в теме
Вещь интересная, большинство не оценят, т.к. не в теме.
Но иногда срабатывает странно или я не разобрался.
Например после обновления, после проверки возможности применения расширения, появляются предупреждения "Восстановить соответствие с методом конфигурации". Если нажать на сообщение, то в случае конфликта появляется окно для устранения конфликта. Выбираю вариант разрешения, все срабатывает правильно. А иногда, в случае отсутствия конфликта все делается автоматически, но в результате выкидываются все вставки и удаления. Т.е. приводит код процедуры к коду конфигурации, выкинув все корректировки.
Для отправки сообщения требуется регистрация/авторизация