Разные проектные группы могут вносить в своих ветках противоречащие друг другу изменения в модель. Такие изменения могут приводить к различного вида конфликтам в случае, если обе проектные группы применят свои изменения к общей вышестоящей ветке. Виды и примеры подобных конфликтов приведены ниже.
Конфликты при использовании удаленных объектов
В ветке А могут быть удалены объекты, которые изменены или начали использоваться в соседней ветке B. Под использованием объекта понимается его правка, создание или редактирование значения атрибута, создание бинарной связи с объектом. После применения ветки А к актуальной модели в ветке B возникнут конфликты, связанные с использованием удаленных объектов (cм. свойство веток выше). Для выявления таких случаев необходимо использовать команду «Проверить ветку» (См. Проверка ветки).
Смысловые конфликты
Если в параллельно существующих ветках А и В были изменены параметры одного и того же объекта, или с ним создавались бинарные связи, то после объединения данных из обеих веток может быть нарушена смысловая целостность модели (Рисунок 1), т.к., например, значения параметров объекта могут противоречить друг другу по смыслу.
Рекомендуется перед применением ветки осуществлять визуальную проверку объектов, которые были изменены в другой ветке. Проверить, был ли изменен объект в другой ветке можно с помощью вкладки Экземпляры объекта в ветках Окна Анализ использования объекта (См. Функция "Анализ использования объекта"”).
Проверка ветки
Для выявления использования удаленных в другой ветке объектов, применяется операция Проверить ветку (Главное меню → Управление моделью → Проверить ветку).
При наличии конфликтов результат выполнения данной операции выдается в текстовом окне с группировкой по типам ошибок, поддержкой гиперссылок на конфликтующие объекты и рекомендациями по исправлению ошибок.
При отсутствии конфликтов на экране отобразится сообщение (см. Рисунок 2).
Внимание! Операцию Проверить ветку рекомендуется вызывать периодически, а также перед применением ветки.