Совместное проектирование печатных плат
Краткий обзор
- Узнайте, что требуется для работы PCB CoDesign, включая подключение к рабочему пространству, условия использования системы контроля версий и поддерживаемую конфигурацию репозитория.
- Посмотрите, как сравнивать локальные и удаленные ревизии печатной платы, анализировать выявленные различия и использовать инструменты панели для просмотра изменений в рабочей области проектирования.
- Разберитесь, как разрешать конфликты и объединять изменения: в каких случаях сохранять локальные изменения, принимать удаленные обновления и сохранять объединенный результат в рабочем пространстве.
Как говорится, многие руки облегчают работу. Разработчики печатных плат давно мечтают о том, чтобы несколько человек могли одновременно работать над одной платой. Неспециалисту эта задача может показаться не слишком сложной — взять результаты трассировки Боба из той части платы и перенести их в мою копию платы, — однако для ее решения необходимо сочетание нескольких ключевых возможностей.
К ним относятся:
-
Система, которая предоставляет нескольким разработчикам доступ к одному проекту печатной платы и позволяет им работать над ним и сохранять собственные изменения, не затрагивая работу других разработчиков.
-
Механизм точного сравнения и выявления различий между версиями одной платы.
-
Инструменты для разрешения обнаруженных различий, позволяющие разработчику выбирать, чьи изменения следует сохранить.
-
Инструменты, способные автоматически обрабатывать большое количество различий и разрешать их без создания конфликтов.
Для решения этих задач Altium Designer предоставляет функции PCB CoDesign, позволяющие изучать различия между ревизией платы, полученной из рабочего пространства, и последней доступной в рабочем пространстве ревизией той же платы. Функциональность PCB CoDesign позволяет обнаруживать изменения данных, хранящихся в документе печатной платы: топологии платы, свойств объектов, стека слоев, правил и ограничений проектирования.
При обнаружении конфликтов вы можете выбрать, сохранить ли локальные изменения или принять удаленные изменения из последнего коммита, а затем выполнить слияние, чтобы надежно согласовать пересекающиеся изменения проекта.
Доступ к функциям PCB CoDesign и управление ими осуществляются через панель PCB CoDesign. Для этого проект печатной платы должен находиться под управлением системы контроля версий подключенного рабочего пространства.
Процесс сравнения и слияния
Если Altium Designer обнаруживает, что ваш документ печатной платы устарел (то есть кто-то сохранил результаты своей работы в рабочем пространстве после того, как вы получили документ) или находится в состоянии конфликта (то есть кто-то сохранил документ в рабочем пространстве до того, как вы отправили туда свою отредактированную и локально сохраненную версию документа, подробнее см. ниже), необходимо обновить плату до последней ревизии или выполнить слияние, чтобы включить чужие изменения в свою версию платы. Это можно сделать следующими способами:
-
нажать значок состояния системы контроля версий на панели Projects и выбрать соответствующую команду в появившемся меню:
-
Out of date — команда Compare To Remote Document Version
-
Modified — команда Compare To Remote Document Version
-
Conflict Prevention — команда Compare To Remote Document Version & Merge
-
Conflict Detected — команда Resolve Conflict: Compare To Remote Document Version & Merge
-
-
открыть панель PCB CoDesign и нажать кнопку Compare, Compare To Remote Document Version или Compare & Merge
-
для документа печатной платы в состоянии Modified использовать команду Local Changes to Remote Document Version из подменю History & Version Control » Compare To контекстного меню записи документа на панели Projects или команду Projects » History & Version Control » Compare To главного меню
-
для документа печатной платы в состоянии Conflict Detected использовать команду Compare To Remote Version & Merge из подменю History & Version Control » Resolve Conflict контекстного меню записи документа на панели Projects
-
нажать кнопку Compare или Compare & Merge в уведомлении, появляющемся в нижней части рабочей области.
После завершения сравнения обнаруженные различия будут перечислены на панели PCB CoDesign. В списке представлены различия между базовой ревизией документа печатной платы (ревизией, которую вы получили) и последней ревизией в рабочем пространстве (с изменениями, внесенными другим пользователем).
Список различий сгруппирован по категориям: Rules, Components, Polygon pours, Copper и т. д. Разверните категорию, чтобы увидеть список конкретных различий в ней, то есть какие объекты этой категории были добавлены, изменены и/или удалены:
-
— объект добавлен в последней ревизии
-
— объект изменен в последней ревизии
-
— объект удален из последней ревизии
Для различия типа Modified также можно навести указатель на соответствующую запись или развернуть ее, чтобы просмотреть сведения об изменении.
Для перемещения по списку различий используйте клавиши Up Arrow / Down Arrow. Выбрав категорию различий, нажмите Spacebar, чтобы развернуть или свернуть ее.
Вы можете выполнять перекрестный переход от различий, перечисленных на панели PCB CoDesign, к рабочей области редактора печатных плат.
-
Щелкните категорию в списке на панели PCB CoDesign, чтобы подсветить в рабочей области изменения из этой категории.
-
Щелкните конкретное изменение в списке на панели PCB CoDesign, чтобы подсветить в рабочей области только это изменение.
-
Используйте приемы выбора
Shift+Clickи/илиCtrl+Click, чтобы выбрать несколько записей на панели.
Цветовое обозначение позволяет увидеть, какие объекты были добавлены, изменены, удалены или остались без изменений (неизмененные объекты соединения между выводами отображаются при выборе этого соединения на панели PCB CoDesign).
Для настройки отображения изменений используйте параметры, доступные при нажатии элемента управления
в верхней части панели.
-
Включите параметр Show on PCB (сочетание клавиш:
Ctrl+Shift+A), чтобы выделить различия в рабочей области документа печатной платы. -
Когда параметр Show on PCB включен, можно также включить параметр Zoom selected object, чтобы при нажатии записи о различии на панели PCB CoDesign переходить к соответствующему объекту в рабочей области. Используйте ползунок для настройки масштаба приближения к выбранному объекту.
Также можно переключаться между текущим состоянием и состоянием до внесения изменений, удерживая сочетание клавиш Shift+B. Подсказка на панели показывает, какое состояние сейчас активно.
Нажмите кнопку
в нижней части панели, чтобы объединить все обнаруженные различия. Появится всплывающее окно с уведомлением о выполнении объединения. Обратите внимание: различия будут объединены в вашей локальной рабочей копии документа печатной платы, которую необходимо сохранить в рабочем пространстве Workspace, чтобы она стала доступна другим разработчикам.
После объединения изменений статус документа печатной платы в системе контроля версий на панели Projects изменится на Merged, со значком
. Нажмите этот значок, чтобы сохранить проект в Workspace или отменить локальные изменения.
Проект также можно сохранить в Workspace с панели Projects с помощью элемента управления Save to Server рядом с именем проекта или с панели PCB CoDesign с помощью кнопки Save to Server.
Разрешение конфликтов
Еще один способ работы — трехстороннее сравнение, которое используется, когда над платой работает кто-то еще. Представьте ситуацию, в которой вы и ваш коллега Боб получаете копии платы из Workspace. Каждый из вас работает со своей копией платы, размещая компоненты и выполняя трассировку. Боб завершает работу над своим участком платы и сохраняет ее обратно в Workspace. В это же время вы также работаете над своим участком платы и сохраняете изменения локально. В результате возникает конфликтная ситуация, которую можно разрешить с помощью панели PCB CoDesign.
Чтобы начать сравнение, нажмите значок статуса системы контроля версий Conflict Prevention или Conflict Detected на панели Projects и выберите в появившемся меню команду Compare To Remote Document Version & Merge или Resolve Conflict: Compare To Remote Document Version & Merge соответственно либо нажмите кнопку Compare & Merge на панели PCB CoDesign. После завершения сравнения на панели появится список обнаруженных различий, а в нижней части панели — список обнаруженных конфликтов.
Из списка конфликтов на панели PCB CoDesign можно переходить к соответствующим объектам в рабочей области редактора печатных плат.
-
Нажмите категорию в списке на панели PCB CoDesign, чтобы выделить в рабочей области конфликты из этой категории.
-
Нажмите конкретный конфликт в списке на панели PCB CoDesign, чтобы выделить в рабочей области только этот конфликт.
-
Используйте
Shift+Clickи/илиCtrl+Clickдля выбора нескольких записей на панели.
Для каждого обнаруженного конфликта или всех обнаруженных конфликтов в определенной категории можно выбрать, какие изменения следует применить: локальные (Local) или изменения из последнего коммита в рабочем пространстве (Remote). Также можно быстро применить нужную настройку ко всем выбранным записям об изменениях. Для этого выберите нужные записи с помощью Shift+Click и/или Ctrl+Click, а затем задайте нужную настройку для одной из выбранных записей. Кроме того, можно воспользоваться раскрывающимся списком на панели в верхней части области обнаруженных конфликтов, чтобы выбрать нужный режим сразу для всех обнаруженных конфликтов.
Перемещаться по списку конфликтов можно с помощью клавиш Up Arrow / Down Arrow. Для переключения режимов (Combined/Local/Remote) для выбранного конфликта используйте клавиши Left Arrow/ Right Arrow. Когда выбрана категория конфликтов, нажмите Spacebar, чтобы развернуть или свернуть ее.
После выбора нужного режима для всех конфликтов можно объединить изменения с локальной копией документа печатной платы.








).






