Работа с проектным репозиторием
Главная страница: Контроль версий и проектные репозитории
Наилучшим подходом к работе с набором исходных файлов является хранение проекта в управляемой среде, такой как репозиторий системы контроля версий. Это важно, поскольку единственным способом обеспечить получение выходных данных из корректных исходных файлов является:
- Обеспечение актуальности набора файлов.
- Создание их слепка.
- Формирование выходных данных из этого слепка.
В Altium Designer, такой репозиторий называется проектным репозиторием (Design Repository). Проектный репозиторий, которым владеет группа проектировщиков, содержит в себе подробную историю процесса проектирования, и он является основным средством совместной работы этой группы проектировщиков.
Проектный репозиторий становится центральным репозиторием, из которого участники проектирования могут извлекать данные и в который они могут выгружать данные, с поддержкой полной истории ревизий всех изменений, совершенных над проектом. Таким образом, проект хранится в качестве набора версий входящих в его состав проектных и исходных документов, что формирует картину развития конструкторского замысла. Используя проектный репозиторий под контролем версий, вы можете быть уверены, что никакая ревизия проекта не будет утеряна, и это позволяет осуществлять безопасную совместную работу над одним проектом между участниками группы, которая может быть географически распределена. Сущность системы контроля версий обеспечивает контрольный анализ процесса проектирования. Полная отслеживаемость формируется благодаря прозрачности того, кто внес изменения, что было изменено, в каком документе и когда. Система может поддерживать множество проектных репозиториев под контролем версий, где ссылка на определенный репозиторий задается контролем версий в папке проекта.
Поддержка контроля версий
Связанные страницы: Контроль версий и проектные репозитории, Использование контроля версий
Программное обеспечение для контроля версий, используемое для реализации самих репозиториев, поддерживается следующими способами:
- Через Altium Designer – использование встроенной в систему поддержки Subversion (SVN). Функциональные возможности Subversion, включенные для использования по умолчанию, доступны благодаря дополнительному программному модулю VCS Provider - SVN. Этот модуль установлен по умолчанию, и функциональные возможности контроля версий доступны через использование SharpSVN. Эта реализация имеет полную поддержку символов Unicode в именах файлов. Это, например, позволяет добавлять в репозиторий SVN файлы, имена которых включают в себя русские символы. Вы также можете подключить и использовать существующий репозиторий Git, поддержка которого обеспечивается дополнительным программным модулем VCS Provider - Git.
- Через Altium 365 Workspace – при подключении Workspace предоставляется локализованный (и централизованный) контроль версий, обеспечиваемый единым Git-репозиторием Workspace –
Versioned Storage
– для размещения всех управляемых проектов. - Через самоуправляемый Altium Concord Pro – при входе в самоуправляемый Altium Concord Pro предоставляется локализованный (и централизованный) контроль версий, обеспечиваемый службой Local Version Control Service сервера. Новая установка самоуправляемого Altium Concord Pro предлагает один проектный репозиторий Git –
Versioned Storage
– для размещения всех управляемых проектов.
- Через Altium NEXUS – использование встроенной в систему поддержки Subversion (SVN). Функциональные возможности Subversion, включенные для использования по умолчанию, доступны благодаря дополнительному программному модулю VCS Provider - SVN. Этот модуль установлен по умолчанию, и функциональные возможности контроля версий доступны через использование SharpSVN. Эта реализация имеет полную поддержку символов Unicode в именах файлов. Это, например, позволяет добавлять к репозиторий SVN файлы, имена которых включают в себя русские символы. Вы также можете подключить и использовать существующий репозиторий Git, поддержка которого обеспечивается дополнительным программным модулем VCS Provider - Git.
- Через NEXUS Server – при входе в NEXUS Server (который является составной частью решения Altium NEXUS) предоставляется локализованный (и централизованный) контроль версий, обеспечиваемый службой Local Version Control Service сервера. Сервер новой установки Altium NEXUS предлагает один проектный репозиторий Git –
Versioned Storage
– для размещения всех управляемых проектов.
Управление проектными репозиториями
Управление проектными репозиториями осуществляется на странице Data Management - Design Repositories диалогового окна Preferences. На этой странице вы можете выполнить ряд действий, в том числе:
- Создание новых файловых репозиториев SVN с помощью функциональных возможностей контроля версий, встроенных в Altium Designer.
- Подключение к существующим репозиториям SVN.
- Просмотр репозиториев, опубликованных для использования с помощью локальной службы Version Control Service сервера управляемых данных, в который вы вошли.
- Управление состоянием активности определенных репозиториев.
Для каждого зарегистрированного (т.е. подключенного) репозитория предоставляется следующая информация:
- Name (Имя) – осмысленное имя репозитория. Оно может, например, отражать проекты, которые хранятся в репозитории. Это имя везде используется в системе для быстрого выбора проектного репозитория для использования, например, при открытии проекта из контроля версий.
- Activated (Активирован) – указывает, доступен репозиторий для использования системой (включено) или нет (отключено). Созданный или подключенный репозиторий будет активирован по умолчанию.
- Type (Тип) – тип репозитория:
SVN
илиGit
. - Repository (Репозиторий) – URL-адрес к корневой папке репозитория.
- Status (Состояние) – указывает, задано ли подключение между Altium Designer и репозиторием успешно () или нет (). Если подключение не задано успешно, будет отображен комментарий, указывающий на проблему.
Создание нового репозитория через Altium Designer
Создание нового репозитория в Altium Designer осуществляется на странице Data Management - Design Repositories диалогового окна Preferences. Нажмите кнопку и выберите SVN из выпадающего меню. Будет открыто диалоговое окно Create SVN Design Repository. Используйте его, чтобы задать осмысленное имя репозитория, указать путь извлечения по умолчанию и расположение репозитория. Если указана папка, которая в данный момент не существует, она будет создана.
После определения настроек необходимым образом нажмите OK. Репозиторий будет создан в указанном расположении, и будет установлено подключение к нему из Altium Designer. Запись репозитория будет отображена в списке на странице Data Management - Design Repositories диалогового окна Preferences.
Создание репозитория через Altium Concord Pro – только для самоуправляемого сервера
Связанная страница: Altium Concord Pro - Служба Version Control
При использовании самоуправляемого Altium Concord Pro в качестве сервера управляемых данных, репозитории SVN могут созданы (если это применимо) через локальную службу Version Control сервера, либо могут быть подключены внешние репозитории (SVN или Git). Все репозитории управляются централизованно через страницу VCS (Admin - VCS) веб-интерфейса сервера.
Чтобы добавить проектный репозиторий, нажмите кнопку , расположенную в верхней правой части страницы. Будет открыто окно Add Repository – используйте его для определения репозитория.
Необходимые свойства зависят от того, создаете ли вы новый репозиторий с помощью локальной службы VCS, либо подключаетесь к существующему внешнему репозиторию:
- New (Новый) – задайте имя и описание репозитория.
- Existing (Существующий) – помимо имени и описания, необходимо предоставить адрес URL репозитория и учетные данные (User Name, Password) для доступа к этому репозиторию (если необходимо).
Подключенный внешний проектный репозиторий отличается отмеченным свойством External в списке репозиториев ().
Проектные репозитории, определенные через Concord Pro, становятся доступны клиенту автоматически после входа, поэтому пользователям не нужно беспокоиться о URL, протоколах, паролях и т.д. Репозиторий настраивается на сервере один раз, после чего он публикуется соответствующим пользователям необходимым образом.
Создание репозитория через Altium NEXUS Server
Связанная страница: Altium NEXUS Server - Служба Version Control
При использовании NEXUS Server в качестве сервера управляемых данных, репозитории SVN могут созданы (если это применимо) через локальную службу Version Control сервера, либо могут быть подключены внешние репозитории (SVN или Git). Все репозитории управляются централизованно через страницу VCS (Admin - VCS) веб-интерфейса сервера.
Чтобы добавить проектный репозиторий, нажмите кнопку , расположенную в верхней правой части страницы. Будет открыто окно Add Repository – используйте его для определения репозитория.
Необходимые свойства зависят от того, создаете ли вы новый репозиторий с помощью локальной службы VCS, либо подключаетесь к существующему внешнему репозиторию:
- New (Новый) – задайте имя и описание репозитория.
- Existing (Существующий) – помимо имени и описания, необходимо предоставить адрес URL репозитория и учетные данные (User Name, Password) для доступа к этому репозиторию (если необходимо).
Подключенный внешний проектный репозиторий отличается отмеченным свойством External в списке репозиториев ().
Проектные репозитории, определенные через Altium NEXUS Server, становятся доступны клиенту автоматически после входа, поэтому пользователям не нужно беспокоиться о URL, протоколах, паролях и т.д. Репозиторий настраивается на сервере один раз, после чего он публикуется соответствующим пользователям необходимым образом.
Подключение к существующему репозиторию SVN через Altium Designer
В среде совместного проектирования может быть уже создан один или множество проектных репозиториев в расположении, доступном множеству пользователей. В этом случае, нет необходимости изобретать велосипед и создавать новый репозиторий – нужно лишь подключиться к нужному существующему репозиторию. Это также применимо для тех случаев, когда вы удалили репозиторий из списка и хотите добавить его обратно.
Чтобы подключиться к существующему репозиторию, на странице Data Management - Design Repositories диалогового окна Preferences нажмите кнопку и выберите SVN из выпадающего меню. Будет открыто диалоговое окно SVN Design Repository. Введите имя, по которому будет происходить обращение к репозиторию из Altium Designer, укажите путь извлечения по умолчанию, метод доступа к репозиторию и путь к корневой папке репозитория. Вы также можете указать определенную подпапку в репозитории.
После определения настроек необходимым образом нажмите OK – будет создано соединение, и репозиторий станет готов к использованию.
Подключение к существующему репозиторию Git через Altium Designer
На странице Data Management - Design Repositories диалогового окна Preferences нет элементов управления для создания нового репозитория Git или подключения к существующему. Тем не менее, вы можете подключиться к существующему репозиторию этого типа другими средствами (которые являются привычными для пользователей Git). Для этого необходимо выполнить следующее:
- Создайте удаленный репозиторий Git или подключитесь к внешнему репозиторию предприятия, в котором хранятся проекты Altium Designer.
- Склонируйте репозиторий, чтобы создать локальный рабочий репозиторий Git.
- Откройте проект Altium Designer из локального репозитория.
Altium Designer распознает, что проект находится под контролем версий репозитория Git и отобразит относящиеся к контролю версий состояния, а также предложит команды/функции для работы с файлами (в том числе фиксация в локальном рабочем репозитории Git и выгрузка из локального репозитория Git в удаленный репозиторий Git).
Изменение свойств репозитория
Вы также можете в любой момент изменить свойства репозитория. Например, вы можете захотеть изменить имя репозитория, которое отображается и по которому происходит обращение к нему в Altium Designer. Или вы можете захотеть изменить подключение, чтобы задать связь с другим репозиторием. Для этого выберите запись репозитория в списке на странице Data Management - Design Repositories диалогового окна Preferences и нажмите кнопку . Будет открыто диалоговое окно SVN Design Repository (или Git Repository), где вы можете внести изменения необходимым образом.
Отключение от репозитория
Чтобы отключиться от проектного репозитория, выберите его запись в списке и нажмите кнопку . Репозиторий будет удален из списка подключенных проектных репозиториев. Сам репозиторий не будет удален, он будет лишь отключен от системы. Чтобы использовать репозиторий снова, подключите его.
Использование проектных репозиториев
После того, как проектный репозиторий VCS определен, подключение к нему упрощает добавление проектов в этот репозиторий и открытие существующих проектов из этого репозитория. Вместо того, чтобы запоминать путь и пробираться по меню для выбора репозитория, вы просто выбираете нужный репозиторий из удобного списка всех репозиториев, к которым вы в данный момент подключены и которые активированы для использования.
Добавление локального проекта в репозиторий
Добавление локального проекта (не под контролем версий) в проектный репозиторий является прямолинейным процессом. Когда проект открыт, используйте команду Add Project Folder To Version Control из панели Projects или панели Storage Manager. Будет открыто диалоговое окно Add to Version Control, в верхней части которого присутствует выпадающий список всех подключенных и активированных проектных репозиториев. Выберите нужный репозиторий.
Иерархия папок внутри выбранного проектного репозитория представлена в разделе Folders диалогового окна. Укажите существующую папку, в которую нужно добавить проектные файлы, или создайте новую папку с помощью кнопки New Folder. Во втором случае, папка будет добавлена в указанное расположение в иерархии папок репозитория, с именем, соответствующим исходной папке проекта.
Создание нового проекта под контролем версий
При создании нового проекта под контролем версий, в поле Repository диалогового окна Create Project представлен выпадающий список всех подключенных и активированных проектных репозиториев. Выберите нужный репозиторий.
Добавление управляемого проекта в проектный репозиторий
Связанная страница: Управляемые проекты и выпуск проекта
Когда вы создаете новый управляемый проект или делаете неуправляемый проект (локальный или под контролем версий) доступным на сервере управляемых данных, итоговый проект хранится в проектном репозитории. Репозиторий можно быстро выбрать из списка заданных репозиториев в рамках соответствующего интерфейса, используемого для создания/преобразования проекта.
Открытие проекта под контролем версий из проектного репозитория
Таким же прямолинейным процессом является возможность открытия проекта под контролем версий, который находится в проектном репозитории. Используйте команду File » Checkout – будет открыто диалоговое окно. Используйте поле Check out from для выбора нужного репозитория из выпадающего списка всех подключенных и активированных репозиториев.
Иерархия папок внутри выбранного проектного репозитория представлена в разделе Folders диалогового окна. Используйте этот раздел, чтобы указать папку, которая будет извлечена из репозитория.
Используйте поле Check out to, чтобы указать, куда будет извлечено содержимое заданной папки. Это будет область вашей локальной "песочницы".
Открытие управляемого проекта из проектного репозитория
Для работы над управляемым проектом, т.е. с его извлеченной локальной рабочей копией, сначала войдите на сервер управляемых данных, где находится этот проект. Затем используйте команду File » Open Project. Будет открыто диалоговое окно Open Project. В разделе Locations диалогового окна будет отображен сервер, отличающийся иконкой , с именем этого сервера. Щелкните ЛКМ по этой записи, чтобы отобразить список управляемых проектов. Будут представлены только те управляемые проекты, которые были опубликованы вам (и к которым у вас есть права доступа), и из тех управляемых проектных репозиториев, которые опубликованы вам. Выберите управляемый проект, который нужно открыть с сервера, и нажмите . Открытый проект будет отображен под записью сервера в панели Projects.