Контроль версий на основе Git
Репозитории типа Git создаются вне Altium Designer, а доступ к содержимому локального рабочего Git-репозитория осуществляется путем открытия файлов из его размещающей папки. Управление как удаленными, так и локальными рабочими Git-репозиториями обычно выполняется через корпоративные системы и внешние Git-инструменты, тогда как операции на уровне файлов (Commit, Push, Update и т. д.) выполняются в среде редактирования Altium Designer.
Добавление в Git Version Control
Как распределенная система контроля версий, Git использует рабочий процесс, отличный от SVN, хотя при работе с уже существующими файлами проекта в Altium Designer эта разница минимальна. Кратко говоря, Git ориентирован на передачу данных между несколькими репозиториями, а не на зависимость от одной целевой точки репозитория.
► Дополнительные сведения см. на веб-сайте Git, а обзор применимых принципов — в разделе Основы контроля версий.
Система Git VCS обычно основана на централизованном удаленном Git-сервере, который при необходимости может размещать несколько Git-репозиториев. Благодаря высокой скорости и легковесности Git широко применяется практика создания отдельного удаленного репозитория для каждого проекта, который затем может быть клонирован (скопирован) как рабочий репозиторий для любого пользователя, работающего над проектом. Обновленные файлы в рабочем Git-репозитории пользователя затем «отправляются» в удаленный репозиторий на Git-сервере для синхронизации.
Метод, используемый для создания проекта Altium Designer в системе Git, зависит от корпоративной инфраструктуры и практики и включает инструменты и процессы, внешние по отношению к Altium Designer. Однако после того как проект помещен в систему контроля версий и становится доступным как локальный рабочий репозиторий, работа с Git VCS в Altium Designer практически не отличается от работы с SVN VCS.
Добавление проекта в Git
В качестве примера существующий проект Altium Designer можно добавить в локальный Git-репозиторий с помощью базовых инструментов командной строки Git. При таком подходе папка проекта становится локальным (рабочим) Git-репозиторием, который связывается с доступным удаленным Git-репозиторием и в конечном итоге обновляется в нем.
Здесь инструменты используются для следующего:
- Создания (инициализации) рабочего Git-репозитория в папке проекта.
-
Добавления файлов проекта в систему контроля версий Git. Спецификация файлов
*.*добавляет файлы, но не папки. -
Указания ссылки на общий удаленный Git-репозиторий на веб-сервере.
PCrepo— это назначенный локальный псевдоним URL удаленного репозитория.
Проект добавляется в локальный Git-репозиторий
Когда проект открыт в Altium Designer, статус его файлов на панелях Projects и Storage Manager — Scheduled for Addition После фиксации в рабочем репозитории файлы переходят в статус Ahead of Server , поскольку они пока еще не находятся под контролем версий в удаленном Git-репозитории.
Файлы запланированы к добавлению и опережают сервер
Команда Push обновит файлы локального репозитория на удаленном Git-сервере, который может запросить действительные учетные данные для целевого репозитория — это выполняется однократно.
Файлы обновляются после запроса действительных учетных данных
Проект Altium Designer, который теперь полностью находится под контролем версий Git, становится доступен другим пользователям из удаленного Git-репозитория. Например, другой пользователь может клонировать репозиторий на свой локальный компьютер и затем отправить свои измененные файлы обратно в удаленный репозиторий в рамках совместной работы.
Клонирование Git-репозитория
Локальный проект, добавленный в Git Version Control, может редактироваться в Altium Designer из локальной папки проекта (рабочего репозитория), а зафиксированные изменения затем обновляются в удаленном Git-репозитории. Локальный и удаленный репозитории связаны и в конечном итоге синхронизируются командой VCS Push.
Другие пользователи, желающие участвовать в разработке, могут получить доступ к проекту, клонировав удаленный Git-репозиторий в локальный рабочий репозиторий. Хотя подход к доступу к файлам из удаленного Git-репозитория зависит от корпоративных систем и методов, базовый способ клонировать содержимое удаленного репозитория в локальный рабочий репозиторий — использовать команду Git; git clone [remote repository URL] [target working repository folder], как показано на изображении ниже.
Зафиксированные изменения обновлены в удаленном Git-репозитории
В результате процесса общий удаленный репозиторий будет воспроизведен как локальный рабочий репозиторий, а последняя ревизия (HEAD) из основной ветки будет автоматически извлечена. После этого файлы можно редактировать, сохранять и фиксировать в VCS в Altium Designer, а затем отправлять обратно в удаленный Git-репозиторий.
Подключение к существующему Git-репозиторию
Altium Designer не предоставляет средств для создания нового Git-репозитория или подключения к существующему. Однако вы можете фактически подключиться к существующему репозиторию этого типа другими способами (традиционным методом, предпочитаемым пользователями Git). Для этого:
- Создайте свой удаленный Git-репозиторий или получите доступ к внешнему репозиторию вашей компании, в котором хранятся ваши проекты Altium Designer.
- Клонируйте репозиторий, чтобы создать локальный рабочий Git-репозиторий.
- Откройте проект Altium Designer из локального репозитория.
Altium Designer распознает, что проект находится под контролем версий в репозитории на основе Git, и предоставит связанные с VCS статусы, а также команды/функции для работы с файлами (включая Commit (в локальный рабочий Git-репозиторий) и Push (из локального Git-репозитория в удаленный Git-репозиторий)).