Контроль версий на основе Git

Репозитории типа Git создаются вне Altium Designer, а доступ к содержимому локального рабочего Git-репозитория осуществляется путем открытия файлов из его размещающей папки. Управление как удаленными, так и локальными рабочими Git-репозиториями обычно выполняется через корпоративные системы и внешние Git-инструменты, тогда как операции на уровне файлов (Commit, Push, Update и т. д.) выполняются в среде редактирования Altium Designer.

 
 
 
 
 
  • Чтобы получить доступ к возможностям Git Version Control в Altium Designer, должно быть установлено VCS Provider – Git программное расширение. Это расширение по умолчанию устанавливается вместе с Altium Designer. Его можно установить или удалить вручную.

    Дополнительные сведения об управлении расширениями см. на странице Extending Your Installation (Altium Designer Develop, Altium Designer Agile, Altium Designer).

  • Обратите внимание, что Git-репозитории обрабатываются вне Altium Designer.

  • Хотя Git VCS предлагает ряд протоколов передачи данных, в настоящее время Altium Designer поддерживает только протокол HTTP/HTTPS для соединений между локальным Git-репозиторием и его удаленным основным репозиторием. Подробнее см. в разделе Protocols.
  • При отправке изменений в проект, находящийся под управлением внешней Git VCS, если репозиторий, в котором расположен этот проект, использует для подключения протокол SSH, вам будет предложено попробовать обновить этот репозиторий для использования поддерживаемого протокола подключения HTTPS (при условии, что сам репозиторий поддерживает этот протокол).
  • Обратите внимание, что при работе с проектом, размещенным на GitHub, из Altium Designer необходимо использовать personal access token. В противном случае при отправке проекта в репозиторий появится ошибка аутентификации. Подробнее см. в разделе Создание personal access token.

Добавление в Git Version Control

Как распределенная система контроля версий, Git использует рабочий процесс, отличный от SVN, хотя при работе с уже существующими файлами проекта в Altium Designer эта разница минимальна. Кратко говоря, Git ориентирован на передачу данных между несколькими репозиториями, а не на зависимость от одной целевой точки репозитория.

► Дополнительные сведения см. на веб-сайте Git, а обзор применимых принципов — в разделе Основы контроля версий.

Система Git VCS обычно основана на централизованном удаленном Git-сервере, который при необходимости может размещать несколько Git-репозиториев. Благодаря высокой скорости и легковесности Git широко применяется практика создания отдельного удаленного репозитория для каждого проекта, который затем может быть клонирован (скопирован) как рабочий репозиторий для любого пользователя, работающего над проектом. Обновленные файлы в рабочем Git-репозитории пользователя затем «отправляются» в удаленный репозиторий на Git-сервере для синхронизации.

Удаленный репозиторий также может быть общим Git-репозиторием типа (bare), расположенным в удобном месте, например на общем сетевом ресурсе. Чтобы создать общий удаленный Git-репозиторий с помощью инструментов командной строки Git, используйте команду git init --bare.

Метод, используемый для создания проекта Altium Designer в системе Git, зависит от корпоративной инфраструктуры и практики и включает инструменты и процессы, внешние по отношению к Altium Designer. Однако после того как проект помещен в систему контроля версий и становится доступным как локальный рабочий репозиторий, работа с Git VCS в Altium Designer практически не отличается от работы с SVN VCS.

Добавление проекта в Git

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

Здесь инструменты используются для следующего:

  1. Создания (инициализации) рабочего Git-репозитория в папке проекта.
  2. Добавления файлов проекта в систему контроля версий Git. Спецификация файлов *.* добавляет файлы, но не папки.
  3. Указания ссылки на общий удаленный Git-репозиторий на веб-сервере. PCrepo — это назначенный локальный псевдоним URL удаленного репозитория.

Проект добавляется в локальный Git-репозиторийПроект добавляется в локальный Git-репозиторий

Следующие процессы Commit и Push также можно было бы выполнить с помощью инструмента командной строки, но в данном примере эти шаги выполняются в Altium Designer, как описано ниже.

Когда проект открыт в Altium Designer, статус его файлов на панелях Projects и Storage ManagerScheduled for Addition (). После фиксации в рабочем репозитории файлы переходят в статус Ahead of Server (), поскольку они пока еще не находятся под контролем версий в удаленном Git-репозитории.

  Файлы запланированы к добавлению и опережают сервер

Команда Push обновит файлы локального репозитория на удаленном Git-сервере, который может запросить действительные учетные данные для целевого репозитория — это выполняется однократно.

Файлы обновляются после запроса действительных учетных данныхФайлы обновляются после запроса действительных учетных данных

Проект Altium Designer, который теперь полностью находится под контролем версий Git, становится доступен другим пользователям из удаленного Git-репозитория. Например, другой пользователь может клонировать репозиторий на свой локальный компьютер и затем отправить свои измененные файлы обратно в удаленный репозиторий в рамках совместной работы.

Обратите внимание, что описанный выше процесс — лишь ручной пример того, как проект может быть добавлен на удаленный Git-сервер. В существующих установках Git VCS, скорее всего, используются GUI-инструменты или автоматизированные системы под управлением администратора, которые делают процесс создания и получения рабочих VCS-проектов простым и понятным.

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

Клонирование Git-репозитория

Локальный проект, добавленный в Git Version Control, может редактироваться в Altium Designer из локальной папки проекта (рабочего репозитория), а зафиксированные изменения затем обновляются в удаленном Git-репозитории. Локальный и удаленный репозитории связаны и в конечном итоге синхронизируются командой VCS Push.

Другие пользователи, желающие участвовать в разработке, могут получить доступ к проекту, клонировав удаленный Git-репозиторий в локальный рабочий репозиторий. Хотя подход к доступу к файлам из удаленного Git-репозитория зависит от корпоративных систем и методов, базовый способ клонировать содержимое удаленного репозитория в локальный рабочий репозиторий — использовать команду Git; git clone [remote repository URL] [target working repository folder], как показано на изображении ниже.

Зафиксированные изменения обновлены в удаленном Git-репозиторииЗафиксированные изменения обновлены в удаленном Git-репозитории

В результате процесса общий удаленный репозиторий будет воспроизведен как локальный рабочий репозиторий, а последняя ревизия (HEAD) из основной ветки будет автоматически извлечена. После этого файлы можно редактировать, сохранять и фиксировать в VCS в Altium Designer, а затем отправлять обратно в удаленный Git-репозиторий.

Подключение к существующему Git-репозиторию

Altium Designer не предоставляет средств для создания нового Git-репозитория или подключения к существующему. Однако вы можете фактически подключиться к существующему репозиторию этого типа другими способами (традиционным методом, предпочитаемым пользователями Git). Для этого:

  1. Создайте свой удаленный Git-репозиторий или получите доступ к внешнему репозиторию вашей компании, в котором хранятся ваши проекты Altium Designer.
  2. Клонируйте репозиторий, чтобы создать локальный рабочий Git-репозиторий.
  3. Откройте проект Altium Designer из локального репозитория.

Altium Designer распознает, что проект находится под контролем версий в репозитории на основе Git, и предоставит связанные с VCS статусы, а также команды/функции для работы с файлами (включая Commit (в локальный рабочий Git-репозиторий) и Push (из локального Git-репозитория в удаленный Git-репозиторий)).

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

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

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

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

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

Content