Сделать существующий проект доступным в рабочем пространстве

Рекомендуемый и наиболее мощный способ работы с проектами — создать новый проект непосредственно в подключенном Workspace. Если у вас уже есть существующий проект, вы можете перенести его в Workspace, сделав его доступным онлайн и выбрав включение формального контроля версий. В обоих случаях проект будет храниться и управляться через встроенную в Workspace систему контроля версий (VCS). Это дает вам полный набор возможностей при работе с проектом в Altium Designer. Размещение проекта под полным управлением VCS Workspace — единственный способ предоставить доступ к этому проекту нескольким людям для редактирования через Altium Designer (при условии, что они являются участниками Workspace) и воспользоваться дополнительными возможностями платформы, такими как отслеживание истории и расширенный совместный доступ к проекту.

Локальный проект, который не находится под контролем версий или находится под внешним контролем версий, можно зарегистрировать в Workspace с помощью методологии под названием Simple Sync. В Workspace создается «зеркало» вашего проекта и выполняется синхронизация. После сохранения изменений в локальных файлах (или сохранения и коммита во внешний репозиторий разработки) эти изменения автоматически синхронизируются с соответствующими элементами зеркального проекта в Workspace. Simple Sync позволяет пользоваться возможностями совместной работы, доступными через платформу Altium 365, при этом исходный проект остается на своем месте. Однако имейте в виду, что для локального проекта (не находящегося под внешним VCS) редактирование возможно только одним человеком (владельцем проекта — тем, кто сделал его доступным онлайн в Workspace).

Чтобы сделать существующий проект (локальный или проект, который сейчас находится под внешним контролем версий) доступным в Workspace — либо как зеркальный проект (Simple Sync) в Altium 365 Workspace, либо как проект под встроенным Git-контролем версий Workspace — откройте проект как обычно в Altium Designer, затем щелкните правой кнопкой по его записи в панели Projects panel и выберите Make Project Available Online в контекстном меню, получив доступ к диалогу Make Available Online. При использовании Enterprise Server Workspace команда Make Project Available on Server открывает диалог Make Available On Server.

При подключении к Workspace с одной или несколькими активными дефинициями процессов для темы процесса Project Creations, выполнение операции «сделать существующий проект доступным в Workspace» осуществляется щелчком правой кнопкой по записи проекта в панели Projects и выбором команды из подменю Convert to Managed Project — подробнее см. Process-based Project Converting.

Сделайте существующий локальный проект доступным в Workspace, по сути «зарегистрировав» его в Workspace и создав его «зеркало».
Сделайте существующий локальный проект доступным в Workspace, по сути «зарегистрировав» его в Workspace и создав его «зеркало».

Используйте диалог Make Available Online, чтобы изменить Name проекта и добавить Description. По умолчанию будет использовано имя исходного проекта.

Установите параметр Version Control, чтобы добавить проект под собственный встроенный VCS Workspace (Git). Если этот параметр снят (только для Altium 365 Workspace), файлы проекта будут просто храниться в Workspace для базового доступа и для предоставления общего доступа другим пользователям только для просмотра и комментирования — схема Simple Sync arrangement. Рекомендуется включить контроль версий, поскольку это дает доступ к максимальной функциональности, предоставляемой Workspace и платформой Altium 365. Обратите внимание: возможность зеркалирования проекта в Workspace (Simple Sync) доступна только при подключении к Altium 365 Workspace.

Если локальный проект уже находится под контролем версий (во внешнем репозитории разработки), в диалоге Make Available Online будет доступен параметр Migrate to Altium 365 Versioned Storage. Подробнее см. Moving from External VCS to Workspace Native VCS.

Project Sharing in an Altium 365 Workspace:

Если параметр Version Control отключен — тем самым используется неформальная функция Simple Sync для локального проекта (который не находится под внешним VCS) — проект может редактироваться только одним человеком (владельцем проекта, то есть тем, кто сделал его доступным в Workspace). Сильная сторона Simple Sync проявляется, когда вы не хотите, чтобы кто-то еще редактировал ваш проект, но при этом хотите воспользоваться парадигмой Global Sharing в Altium 365 и иметь возможность делиться проектом с несколькими другими людьми для просмотра и комментирования.

Когда параметр Version Control включен — за счет использования Git-репозитория разработки Versioned Storage Workspace — проектом можно поделиться с несколькими людьми для редактирования либо для просмотра и комментирования.

Нажмите ссылку Advanced в диалоге, чтобы отобразить поле Folder. Это поле используется для указания, где в структуре папок Workspace должна быть создана папка для зеркального проекта. Путь по умолчанию для новых проектов задается на странице Admin – Settings – Projects в браузерном интерфейсе Workspace (по умолчанию это будет Projects\<ProjectName>). Нажмите кнопку , чтобы при необходимости просмотреть и выбрать другую папку Workspace.

После задания требуемых свойств перехода проекта в Make Available Online диалоге нажмите OK. Для проекта, который не находится под внешним контролем версий и при публикации онлайн (в Workspace Altium 365 был отмечен параметр Version Control ), проект и файлы будут зафиксированы (committed) и отправлены (pushed) в репозиторий проектирования Versioned Storage Workspace. После этого панель Projects panel отобразит полностью синхронизированное состояние между репозиторием проектирования Workspace и локальным (рабочей копией) репозиторием, что обозначается соответствующими значками . Проект становится полноценным проектом Workspace — не просто «зарегистрированным» в Workspace, а действительно зафиксированным и находящимся под контролем версий Workspace. Любые изменения, внесённые в проект, необходимо сохранять (commit/push) обратно в репозиторий в Workspace.

Проект, опубликованный в Workspace, изначально будет предоставлен с доступом Read/Write дизайнеру, который его создал (Owner), а также всем администраторам Workspace. Дополнительные сведения о настройке прав доступа к проекту см. в разделе Sharing a Design.

Впоследствии опубликованный в Workspace проект будет доступен на странице Projects в браузерном интерфейсе Workspace.

При публикации в подключённом Workspace проекта, находящегося под внешней VCS, автоматически созданные ссылки на внешние VCS-репозитории скрываются на странице Data Management – Design Repositories page диалога Preferences.

Эта функция находится в Open Beta и доступна, когда параметр VCS.HideProjectExternalRepositoriesLinks включён в диалоге Advanced Settings dialog.

Ограничения при использовании существующего внешнего репозитория контроля версий

Как упоминалось ранее, ваши локальные проекты могут уже отслеживаться существующей внешней системой контроля версий (Git, SVN, EPDM и т. п.). При использовании Workspace Altium 365 вы можете продолжать работать по этой схеме, как и раньше, и просто сделать проекты доступными в Workspace, зарегистрировав их в этом Workspace — с помощью функции Make Project Available Online.

В этом режиме каждый раз, когда вы вносите изменения в проект и фиксируете (commit) эти изменения во внешнем VCS-репозитории, данные проекта будут зеркалироваться в Workspace в фоновом режиме, и вся необходимая обработка будет выполняться как обычно — предпросмотр, where used и т. д. Однако следует учитывать ряд ограничений:

  • Создание нового проектного дизайна по-прежнему должно следовать прежнему процессу, т. е. проект вручную создаётся во внешней VCS-системе. Затем проект регистрируется и зеркалируется в Workspace с помощью функции Make Project Available Online.
  • Если изменения в проекте сделаны, но commit/push выполняется внешними инструментами, а не через Altium Designer, то эти изменения не появятся для зеркалируемого проекта в Workspace. Это исправляется при следующем открытии проекта в Altium Designer, который автоматически синхронизирует локальный проект с зеркальной версией в Workspace. Если изменения были внесены другим пользователем, то при повторном открытии файлы проекта будут отображаться как Out Of Date () и могут быть исправлены с помощью команды контроля версий Update.
  • Открытие проекта вторым пользователем потребует доступа к этому внешнему VCS-репозиторию.
  • Управление правами придётся настраивать/поддерживать в двух местах — в Workspace и в первоисточнике (во внешнем VCS-репозитории Git/SVN и т. п.).
  • Некоторые функции, поставляемые через платформу Altium 365, работают только при размещении проекта под нативной системой контроля версий Workspace. Если оставлять проект под внешней системой контроля версий, то такие функции, по мере их появления на платформе, будут вам недоступны. Вы можете перейти с внешней VCS на нативную VCS Workspace — см. следующий раздел с процедурой выполнения этого перехода.

Работа с GitHub

Использование платформы GitHub platform в качестве внешней системы контроля версий (VCS) — популярный способ размещения и совместного использования проектных данных, и Git-репозитории поддерживаются в Altium Designer. Как описано выше для Workspace Altium 365, существующую схему с внешней VCS можно синхронизировать (зеркалировать) с Workspace, что позволяет воспользоваться его расширенными возможностями управления данными и совместной работы.

То, как вы обычно работаете непосредственно с GitHub, будет различаться в зависимости от корпоративных практик или просто от доступных вам Git-инструментов. В целом же проект создаётся в локальном Git-репозитории и затем отправляется (Push) в удалённый репозиторий GitHub, либо существующий проект клонируется (Clone) из GitHub в локальный репозиторий. После размещения в локальном Git-репозитории проект можно открыть в Altium Designer для редактирования — программа распознает и будет использовать локальный/удалённый репозитории GitHub.

Если проект на базе Git зеркалируется в Workspace Altium 365 (Make Project Available Online), им можно управлять и работать с ним в Altium Designer так же, как с любым другим проектом, хранящимся в Workspace. В этой схеме Workspace по-прежнему предоставляет все преимущества своей системы управления проектами и при этом прозрачно взаимодействует с GitHub для выполнения основных VCS-действий — commit, push, pull и т. д. Altium Designer запросит ваши учётные данные GitHub и сохранит их для последующих взаимодействий с GitHub.

Обратите внимание: Altium Designer не может автоматически подключаться к GitHub, если учётная запись GitHub настроена на two-factor authentication.

Протоколы GitHub

Хотя Git VCS предлагает ряд protocols передачи данных, в настоящее время Altium Designer поддерживает только протокол HTTP/HTTPS для соединений между локальным Git-репозиторием и его удалённым master-репозиторием. На практике используемый протокол задаётся префиксом URL, указанным для подключения к удалённому репозиторию — https://<remote repository>, ssh://<remote repository>, git://<remote repository> и т. д.

GitHub поддерживает протоколы SSH и HTTPS и рекомендует использовать HTTPS URL для подключений.

► См. Which remote URL should I use? на GitHub для получения дополнительной информации.

Протокол HTTPS даёт преимущество безопасного соединения, которое просто использовать и внедрять, тогда как с SSH работать сложнее — из‑за необходимости публичных ключей и требований к портам firewall/proxy — он, вероятно, менее безопасен и не предоставляет удобства SSO (single sign-on) аутентификации.

Аналогично, протокол подключения GIT не рекомендуется (и не поддерживается здесь) из‑за отсутствия аутентификации и сложности настройки.

Если ваша внешняя VCS-система привязана к протоколу, отличному от HTTPS, например к SSH-подключению GitHub, то этот протокол будет предустановлен в репозитории, который был клонирован с удалённого. Поскольку этот протокол несовместим с Altium Designer, при попытке интегрировать проект с Altium Workspace будет выдана ошибка. Для SSH-подключения вам будет предложено попытаться обновить этот репозиторий так, чтобы вместо него использовался поддерживаемый протокол HTTPS (при условии, что сам репозиторий поддерживает этот протокол). Если вы не уверены, какой протокол remote URL используется для локального Git-репозитория, это можно проверить с помощью команды git remote – v.

Используйте интерфейс командной строки Git Bash, чтобы проверить настройку remote URL репозитория. Используйте интерфейс командной строки Git Bash, чтобы проверить настройку remote URL репозитория.

Репозиторий можно перенастроить на другой URL, например на протокол HTTPS для обеспечения совместимости с Altium Designer, с помощью команды git remote set-url <name> <URL>, где префикс URL задаёт тип протокола.

Изменение протокола URL подключения к удалённому репозиторию и последующее подтверждение командой remote.Изменение протокола URL подключения к удалённому репозиторию и последующее подтверждение командой remote.

Переход с внешней VCS на нативную VCS Workspace

При подключении к Workspace Altium 365 Altium Designer также предоставляет возможность корректно migrate проекты, использующие внешнюю VCS, в полностью управляемый проект Workspace, который размещает файлы проекта в собственном Git-репозитории. Преобразованный проект, который сохранит прежнюю историю VCS-коммитов, затем сможет воспользоваться нативными VCS-возможностями Workspace, такими как advanced project sharing, единая аутентификация и event-based History timeline.

Функция миграции VCS проекта поддерживает внешние системы контроля версий Git и SVN и доступна при публикации локального файлового проекта онлайн, либо при повышении статуса зеркалируемого (только синхронизируемого) проекта до проекта под собственной Git VCS Workspace.

Чтобы просто мигрировать проект, который хранится под внешним контролем версий, щёлкните правой кнопкой по имени проекта на панели Projects panel и выберите параметр Make Project Available Online в контекстном меню, либо выберите Project » Make Available Online в главном меню. В следующем диалоге Make Available Online установите флажок Migrate to Altium 365 Versioned Storage и подтвердите операцию (OK).

Включённый параметр Migrate to Altium 365 Versioned Storage фактически приводит к замене внешнего VCS-репозитория на Git-репозиторий Workspace, преобразует проект в проект, хранящийся и управляемый в Workspace Altium 365, и, где это возможно, переносит историю коммитов из внешней VCS. Обратите внимание: если параметр миграции оставить выключенным, проект будет зеркалироваться в Workspace (схема Simple Sync), при этом внешний репозиторий сохраняется как хранилище VCS.

Миграция VCS также доступна, когда Altium Designer подключён к Workspace Enterprise Server. В этом случае параметр Migrate to Altium Versioned Storage доступен в диалоге Make Available On Server. Обратите внимание: если параметр миграции оставить выключенным, внешний репозиторий проекта сохраняется как его VCS-хранилище (схема Simple Sync не поддерживается для Workspace Enterprise Server).

Чтобы перенести локальный VCS-проект в полностью управляемый VCS-проект в вашем Workspace Altium 365, установите флажок параметра миграции VCS при публикации проекта онлайн.Чтобы перенести локальный VCS-проект в полностью управляемый VCS-проект в вашем Workspace Altium 365, установите флажок параметра миграции VCS при публикации проекта онлайн.

Диалоговое окно Migrate Project откроется и предупредит вас о том, что проект будет перенесён под полное управление VCS рабочей области (Workspace). Нажмите кнопку Browse , чтобы выбрать папку на жёстком диске, где будет создан новый локальный репозиторий проекта (на базе git). Нажмите кнопку Migrate , чтобы продолжить миграцию.

Диалоговое окно Migrate Project
Диалоговое окно Migrate Project

После выполнения подсказок (включая создание финального коммита VCS) проект окажется под контролем версий в Git-репозитории Workspace. История коммитов внешней VCS и её комментарии/сообщения переносятся в новый VCS‑проект Workspace, к которому можно получить доступ в Altium Designer через представление History view — щёлкните правой кнопкой мыши по имени проекта в панели Projects и выберите команду History & Version Control » Show Project History.

После миграции внешняя история коммитов проекта (показана слева) переносится в представление History в Altium Designer (справа).После миграции внешняя история коммитов проекта (показана слева) переносится в представление History в Altium Designer (справа).

Обратите внимание: при первом открытии истории проекта после процесса миграции вы можете увидеть, что выполняется вычисление данных для всех включённых коммитов. Workspace требуется некоторое время, чтобы обработать эти коммиты, а также различия между ними.

Если проект во внешней VCS уже управляется в Altium 365 Workspace как mirrored project (синхронизированные локально‑серверные файлы), его VCS‑файлы можно перенести в нативный Git‑репозиторий сервера с помощью команды Migrate to Altium Versioned Storage, доступной из Project History view, диалога Project Options dialog или контекстного меню (по правому клику) панели Projects panel's History & Version Control

VCS‑проект, который был синхронизирован с вашей Workspace (зеркалирован в неё), мигрируется с использованием опции Migrate Project to Altium Version Control.VCS‑проект, который был синхронизирован с вашей Workspace (зеркалирован в неё), мигрируется с использованием опции Migrate Project to Altium Version Control.

Производительность миграции максимальна, когда исходная внешняя VCS основана на Git — процесс проще, поскольку VCS Altium 365 Workspace также основана на Git. Для SVN, однако, миграция может занять некоторое время в зависимости от размера репозитория и количества содержащихся в нём коммитов.

VCS Migration limitations

  • Git
    • Git‑репозитории, содержащие несколько PCB‑проектов, поддерживаются при подключении к Altium 365 Workspace. После нажатия OK в диалоге Make Available Online вам будет предложено выбрать файлы для миграции.
    • Файл проекта (*.PrjPcb) должен находиться в корневой папке Git‑репозитория.
  • SVN
    • Базовый протокол SVN File не поддерживается.
    • Если ваш SVN‑репозиторий содержит несколько проектов, процесс миграции создаст новые локальные папки в дополнение к существующей рабочей копии SVN. Это связано с тем, что хранилище Altium 365 Workspace основано на Git, а Git‑репозиторий нельзя хранить внутри рабочей копии SVN.
    • Коммиты, включающие внешний файл относительно папки проекта, могут не отображаться, поскольку процесс миграции распознаёт только коммиты в папку проекта.
После успешной миграции проекта из внешней VCS в Altium 365 Workspace ссылка на внешний репозиторий удаляется автоматически. Эта функция реализована в Altium Designer 23.0. Если проект был опубликован в Altium 365 Workspace с использованием более ранней версии Altium Designer, запись о репозитории может отображаться на странице Data Management - Design Repositories page диалога Preferences. Если вы являетесь администратором Workspace и у репозитория нет привязки к проекту Workspace, репозиторий можно удалить из Workspace, выбрав его запись и нажав кнопку Remove. Обратите внимание: если проект был «мягко» удалён (перемещён в корзину/Trash), его необходимо удалить окончательно, чтобы можно было удалить репозиторий, который на него ссылается. Репозиторий Workspace Versioned Storage удалить нельзя.

Совместная работа после миграции

  • Когда участник команды Workspace мигрировал проект в Altium Versioned Storage, необходимо убедиться, что остальные соавторы подключились к командной Workspace, а затем обновили свои локальные (рабочие) копии проекта. Это отображается в панели Projects значком (Out of Date), связанным с файлом проекта, и выполняется командой Project » History & Version Control » Update Whole Project.
  • После обновления мигрированного проекта Altium Designer предложит обновить ссылки на новый репозиторий, пересобрав локальную рабочую папку проекта. Выберите рекомендуемый вариант в диалоге Fix version control link, чтобы завершить локальное обновление проекта.

  • Обратите внимание: если соавтор проекта not подключится к командной Workspace, а затем выполнит коммит изменений проекта в VCS, эти изменения продолжат регистрироваться во внешнем репозитории и, следовательно, будут рассинхронизированы с мигрированным VCS‑проектом Workspace.
  • Во время миграции Altium Designer выполняет коммит в исходный репозиторий, чтобы установить отметку‑уведомление — благодаря этому другие экземпляры Altium Designer у участников команды смогут распознать, что проект был мигрирован.

Переход с SVN Workspace на Git Workspace

SVN не поддерживается в Altium On-Prem Enterprise Server, начиная с версии 7.2. Чтобы избежать ограничений при управлении SVN‑проектом, рекомендуется мигрировать SVN‑проекты во встроенный Git‑репозиторий Workspace Enterprise Server. Это можно сделать до обновления сервера, как описано ниже. 

Дополнительные сведения о прекращении поддержки SVN в Altium On-Prem Enterprise Server см. в статье базы знаний SVN Discontinuation with Altium On-Prem Enterprise Server 7.2.1 .

Когда Altium Designer подключен к Workspace на базе Enterprise Server и проект разработки хранится в репозитории SVN, управляемом через Version Control Service Workspace, вы можете перенести этот проект из репозитория SVN во встроенный Git-репозиторий Workspace (Versioned Storage). Для этого щелкните правой кнопкой мыши по записи проекта на панели Projects и выберите в контекстном меню команду History & Version Control » Migrate Project to Altium Versioned Storage. Либо нажмите кнопку Migrate to Server Versioned Storage в диалоговом окне Project Options.

После выполнения подсказок, включая выполнение финального коммита в VCS, проект будет перенесен под систему контроля версий Git-репозитория Workspace.

Управление синхронизацией проекта

После того как локальный проект станет доступен в Workspace Altium 365, управление его доступностью онлайн и синхронизацией выполняется на вкладке General tab диалогового окна Project Options.

Обратите внимание: вкладка General отображается только когда Altium Designer подключен к Workspace Altium 365, а не к Workspace на базе Enterprise Server.

Параметры и элементы управления, относящиеся к публикации проекта онлайн, представлены на вкладке General  диалогового окна Project Options.
Параметры и элементы управления, относящиеся к публикации проекта онлайн, представлены на вкладке General диалогового окна Project Options.

Используйте параметр в области General этой вкладки, чтобы изменить описание проекта. Это влияет только на зеркальную копию проекта внутри Workspace.

В области Online Availability and Synchronization вкладки параметр Version Control отражает текущий режим доступности онлайн:

  • Option Enabled – проект (и его исходные файлы) хранятся в собственной нативной VCS Workspace (Git). Это рекомендуемый подход, поскольку он обеспечивает доступ к максимальному набору функций, предоставляемых Workspace и платформой Altium 365.
  • Option Disabled – файлы проекта хранятся в Workspace для базового доступа и чтобы можно было делиться ими с другими только для просмотра и комментирования — схема Simple Sync.

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

Этот параметр недоступен, если проект хранится во внешнем репозитории VCS.

Если вы хотите остановить синхронизацию между локальным проектом и его управляемой версией, опубликованной в Workspace, нажмите кнопку . Появится окно Turn off project synchronization. Выберите параметр Unlink , затем нажмите OK в диалоговом окне Project Options. Локальный проект больше не будет связан с проектом в Workspace.

После сохранения локального проекта это отразится на панели Projects panel: проект будет показан в активной группе проектов (*.DsnWrk), а не как запись под активным Workspace. Сохранение требуется, поскольку ссылки на проект в Workspace удаляются из файла проекта.

Проект в Workspace остается без изменений — этим действием он не удаляется.

Вы можете разорвать связь между локальным проектом и его экземпляром, опубликованным в Workspace.Вы можете разорвать связь между локальным проектом и его экземпляром, опубликованным в Workspace.

При необходимости вы всегда можете снова сделать локальный проект доступным онлайн — как зеркальный или как полноценный VCS-проект (Version Control). На вкладке General диалогового окна Project Options будет доступна кнопка , с помощью которой открывается диалоговое окно Make Available Online.

Если вы повторно публикуете локальный проект онлайн после отключения синхронизации, может потребоваться изменить имя проекта. Поскольку отключение синхронизации не удаляет проект в Workspace, там может по‑прежнему существовать проект с тем же именем и в той же папке. Если нужно сохранить то же имя проекта, предыдущий экземпляр проекта в Workspace всегда можно удалить.

Локальный проект также можно опубликовать онлайн — в Workspace — с вкладки General  диалогового окна Project Options.Локальный проект также можно опубликовать онлайн — в Workspace — с вкладки General диалогового окна Project Options.

AI-LocalizedЛокализовано с помощью ИИ
Если вы обнаружили проблему, выделите текст/изображение и нажмитеCtrl + Enter, чтобы отправить нам свой отзыв.
Доступность функциональных возможностей

Набор доступных функциональных возможностей зависит от вашего решения Altium – Altium Develop, редакция Altium Agile (Agile Teams или Agile Enterprise) или Altium Designer (на активной подписке).

Если вы не видите в своем ПО функцию, описанную здесь, свяжитесь с отделом продаж Altium, чтобы узнать больше.

Устаревшая документация

Документация Altium Designer больше не разделена по версиям ПО. Если вам необходим доступ к документации по старым версиям Altium Designer, посетите раздел Устаревшая документация на странице Прочие установщики.

Content