Установка Altium Concord Pro обеспечивает локализованный (и централизованный) контроль версий, предоставляемый службой Version Control. Эта служба обеспечивает функциональные возможности контроля версий, где это необходимо, локально, без необходимости поиска и приобретения внешнего программного обеспечения для контроля версий.
При централизованном определении проектных репозиториев, у организации есть полный контроль над тем, какие репозитории могут использоваться проектировщиками.
Новая установка Altium Concord Pro предоставляет один проектный репозиторий Git для хранения всех управляемых проектов. Это избавляет от необходимости в установке и настройке локальной службы Version Control сервера. Проектировщикам доступен для выпуска один проектный репозиторий – Versioned Storage
. Таким образом, страница VCS веб-интерфейса сервера становится чисто информационной – вы не можете создать новый репозиторий либо каким-либо образом изменить или удалить репозиторий Git.
Если вы обновили Altium Concord Pro с Altium Vault 3.0, то будет также доступно использование репозиториев SVN, соответственно, вы сможете продолжить использовать рабочий процесс, применяемый ранее. В этом случае вы можете продолжить создавать репозитории с помощью локальной службы Version Control (только SVN) или подключаться ко внешним репозиториям (SVN или Git).
Для получения более подробной информации о проектных репозиториях и работы с ними через Altium Designer перейдите на страницу
Работа с проектным репозиторием.
Ключевые преимущества
Существует два ключевых преимущества использования централизованной службы Version Control:
- У вас есть общее средство управления пользователями и правами для Altium Concord Pro и SVN. При входе в Altium Concord Pro, служба Version Control работает с вашей сессией/учетными данными.
- Репозитории, определенные через Altium Concord Pro (на странице VCS (Admin – VCS) веб-интерфейса Concord Pro), становятся доступны клиенту автоматически после входа, поэтому пользователям не нужно беспокоиться о URL, протоколах, паролях и т.д. Репозиторий настраивается на сервере один раз, после чего он публикуется соответствующим пользователям необходимым образом.
При создании нового пользователя в Altium Concord Pro, заданный для этого пользователя пароль (Password) хранится в Concord Pro и в службе SVN, поскольку служба SVN не может получить непосредственный доступ к паролю Concord Pro.
Создание репозитория
Репозитории могут быть созданы через локальную службу Version Control (только SVN), либо могут быть подключены внешние репозитории (SVN или Git). Централизованное управление всеми репозиториями осуществляется через страницу VCS (Admin – VCS) веб-интерфейса Concord Pro, где осуществляется управление следующими аспектами:
- Отображаемое имя, описание и путь репозитория.
- Настраиваемая доступность – какие определенные пользователи имеют доступ к репозиториям (или роли, в случае если репозитории определены через локальную службу Version Control).
- Применимость – добавляйте и удаляйте репозитории централизованно, что избавляет отдельных проектировщиков от необходимости создавать репозитории и подключаться к ним независимо.
При входе пользователя в Altium Concord Pro, доступные ему проектные репозитории автоматически добавляются на страницу Data Management - Design Repositories диалогового окна Preferences.
Определяйте доступ к проектным репозиториям своей организации централизованно. Репозитории могут быть внутренними для установки Altium Concord Pro (те, которые определены с помощью локальный службы) или внешними, заданными через встроенную в Altium Designer систему SVN или стороннюю службу SVN/Git. Управление доступом осуществляется через страницу VCS веб-интерфейса Concord Pro. При входе пользователя в Altium Concord Pro, доступные ему проектные репозитории автоматически добавляются на страницу Data Management - Design Repositories диалогового окна Preferences.
Добавление репозитория
Чтобы добавить проектный репозиторий, нажмите кнопку , расположенную в верхней правой части страницы. Будет открыто окно Add Repository, где необходимо задать репозиторий.
С помощью локальной службы Version Control могут созданы только репозитории типа SVN. Подключаемые существующие (внешние) репозитории могут быть SVN или Git.
Необходимые свойства зависят от того, создаете ли вы новый репозиторий с помощью локальной службы Version Control либо подключаете существующий внешний репозиторий:
- New (Новый) – задайте имя и описание репозитория.
- Existing (Существующий) – помимо имени и описания, вам необходимо задать URL репозитория и свои учетные данные (User Name, Password) для доступа к репозиторию (если необходимо).
При создании репозитория, который является внутренним для Altium Concord Pro, имя должно начинаться с A-Z, a-z или 0-9, и оно может содержать эти символы. Подчеркивания, дефисы и пробелы могут быть в середине имени. Вы не можете использовать следующие слова: AUX
, COM1
-COM9
, LPT1
-LPT9
, CON
, NUL
и PRN
. Для внешних репозиториев ограничений по имени не существует.
Создайте новый репозиторий с помощью локальной службы Version Control в Altium Concord Pro или подключите существующий репозиторий (SVN или Git), который был создан вне Altium Concord Pro.
Подключенный внешний проектный репозиторий отличается включенной опцией External в списке репозиториев ().
Чтобы изменить свойства проектного репозитория на более позднем этапе, нажмите соответствующий элемент управления Edit (). Чтобы удалить проектный репозиторий, нажмите соответствующий элемент управления Remove ().
Репозиторий Git по умолчанию (Versioned Storage
) не может быть каким-либо образом изменен или удален.
Публикация репозитория
Когда у вас есть централизованно созданные проектные репозитории, необходимо убедиться, что у всех, кому нужен доступ к репозиториям (в том числе у проектировщиков, работающих с проектами плат), этот доступ имеется. Это осуществляется путем публикации репозитория, т.е. управлением правами доступа к нему. Для этого нажмите соответствующий репозиторию элемент управления Share ().
Будет открыто окно Manage Permissions со всеми элементами управления, необходимыми для публикации репозитория другим пользователям.
Когда проектные репозитории организованы централизованно, их публикация другим пользователям становится управлением прав доступа к репозиторию.
Что следует иметь в виду:
- Локальный репозиторий, созданный с помощью службы Version Control в Altium Concord Pro (т.е. не внешний репозиторий), по умолчанию опубликован для пользователя, который создал этот репозиторий, и для роли
Administrators
. У них есть полные права на чтение/запись.
- Внешний репозиторий по умолчанию не опубликован ни для кого, даже для пользователя, который добавил подключение к этому репозиторию через интерфейс.
- Только локальные (не внешние) репозитории могут быть опубликованы определенным ролям в Altium Concord Pro или всем пользователям этой установки Concord Pro. Список ролей приведен после отдельных пользователей.
-
С точки зрения прав доступа, у пользователя/роли есть доступ на чтение/запись, когда включена опция Can Write. Если эта опция отключена, у них есть только доступ на чтение.
Примечание: Настройки прав доступа при публикации внутреннего проектного репозитория могут работать не так, как вы ожидаете. Хотя сам внутренний проектный репозиторий может быть опубликован пользователю только для чтения, этот пользователь все еще может создавать НОВЫЕ управляемые проекты в этом репозитории и получать полные права на чтение/запись для соответствующих папок проекта, которые будут созданы. Обратите внимание, что такая работа применима только для новых управляемых проектов и их папок, созданных этим пользователем. У пользователя не будет прав на запись в другие папки репозитория.
- Чтобы удалить существующего пользователя/роль из тех, кто имеет доступ к репозиторию, нажмите Remove ().
Публикация локального репозитория пользователю Altium Concord Pro
Чтобы опубликовать локальный (не внешний) репозиторий другому пользователю Altium Concord Pro:
-
Нажмите Add User в окне Manage Permissions.
-
В открывшемся окне Add Users начните вводить полное имя, имя пользователя или email пользователя Altium Concord Pro в поле Select Users to be added, чтобы отобразить список соответствующих пользователей. Выберите нужного пользователя из списка. Можно выбрать множество пользователей. Чтобы удалить пользователя, нажмите перекрестие справа от его имени.
-
Задайте права доступа для пользователей с помощью поля Permission. Используйте выпадающее меню для выбора между доступом на чтение (Read
) или на чтение/запись (Read/Write
).
-
Когда настройки выполнены, нажмите кнопку , чтобы сохранить добавление пользователей и вернуться в окно Manage Permissions.
- Нажмите кнопку в окне Manage Permissions.
Чтобы изменить права доступа существующего пользователя, используйте опцию Can Write в окне Manage Permissions, для переключения между доступом на чтение/запись (включена) или только на чтение (выключена).
Публикация локального репозитория определенной роли
Если репозиторий был создан с помощью локальной службы Version Control, а не был подключен извне, то вы также можете опубликовать его ролям (группам пользователей), определенным в Altium Concord Pro. Чтобы опубликовать локальный (не внешний) репозиторий определенной роли:
-
Нажмите Add Group в окне Manage Permissions.
-
В открывшемся окне Add Groups начните вводить имя роли в поле Select Groups to be added, чтобы отобразить список соответствующих ролей. Выберите нужную роль из списка. Можно выбрать множество ролей. Чтобы удалить роль, нажмите перекрестие справа от ее имени.
-
Задайте права доступа для ролей с помощью поля Permission. Используйте выпадающее меню для выбора между доступом на чтение (Read
) или на чтение/запись (Read/Write
).
-
Когда настройки выполнены, нажмите кнопку , чтобы сохранить добавление ролей и вернуться в окно Manage Permissions.
- Нажмите кнопку в окне Manage Permissions.
Чтобы изменить права доступа существующей роли, используйте опцию Can Write в окне Manage Permissions для переключения между доступом на чтение/запись (включено) или только на чтение (выключено).
Публикация локального репозитория всем пользователям
Если репозиторий был создан с помощью локальной службы Version Control, а не был подключен извне, то вы также можете опубликовать его для всех пользователей, что позволяет получать доступ к репозиторию всем пользователям Altium Concord Pro и использовать его. Чтобы опубликовать локальный (не внешний) репозиторий всем, у кого есть доступ к серверу:
-
Нажмите Add Anyone в окне Manage Permissions.
-
Непосредственно в список будет добавлена запись Anyone
, и автоматически будет предоставлен доступ на чтение/запись.
- Нажмите кнопку в окне Manage Permissions.
Чтобы изменить права доступа для записи Anyone
, используйте опцию Can Write в окне Manage Permissions, для переключения между доступом на чтение/запись (включено) или только на чтение (выключено).
Публикация внешнего репозитория пользователю Altium Concord Pro
Чтобы опубликовать внешний репозиторий пользователю Altium Concord Pro:
-
Нажмите Add User в окне Manage Permissions.
-
В открывшемся окне Add Users начните вводить полное имя, имя пользователя или email пользователя Altium Concord Pro в поле Select Users to be added, чтобы отобразить список соответствующих пользователей. Выберите нужного пользователя из списка. Чтобы удалить пользователя, нажмите перекрестие справа от его имени.
В поле SVN User введите имя, которое зарегистрировано во внешнем репозитории (SVN или Git) и, соответственно, имеет доступ к нему. Как правило, это соответствующее имя пользователя, зарегистрированное в репозитории.
-
Нажмите кнопку , чтобы подтвердить добавление пользователя и вернуться в окно Manage Permissions. Нажмите Add User для добавления других пользователей, как указано в шаге 2 выше. Обратите внимание, что на втором изображении в примере ниже пользователю Barry
было задано использование его соответствующего имени BarrySmith
из репозитория, а не общего имени ServerAdmin
.
- Нажмите кнопку в окне Manage Permissions.
Пользователи Altium Concord Pro могут быть сопоставлены любому доступному имени пользователя во внешнем репозитории SVN, и множество пользователей Altium Concord Pro могут быть сопоставлены одному имени пользователя во внешнем репозитории SVN.
См. пример
- Сам доступ (с точки зрения доступа только на чтение или на чтение/запись) определяется, в конечном счете, установкой репозитория SVN. Сервер Concord Pro не влияет на авторизацию пользователя внешнего репозитория, поэтому управлять этими правами доступа со стороны сервера невозможно.
- При доступе ко внешнему репозиторию сервера из Altium Designer, например при создании нового репозитория, могут быть запрошены учетные данные для подключения к репозиторию, если это не было выполнено ранее. Эти учетные данные будут автоматически использоваться при последующих активностях, связанных с этим репозиторием.
Внешний доступ к локальному проектному репозиторию SVN
Доступ к проектному репозиторию SVN, который был создан с помощью локальной службы Version Control, можно осуществить с помощью клиента SVN, такого как TortoiseSVN. Доступ осуществляется с помощью обычного сетевого протокола (svn://
). Корректный адресный путь репозитория можно скопировать из двух расположений:
Адрес будет зависеть от того, осуществляете ли вы доступ к репозиторию с той же машины, на которой установлен Altium Concord Pro (например, svn://127.0.0.1/<ИмяРепозитория>
или svn://localhost/<ИмяРепозитория>
), либо с удаленного ПК (например, svn://<ИмяКомпьютера>/<ИмяРепозитория>
, где ИмяКомпьютера
– это имя ПК, на котором находится Altium Concord Pro).
Используйте полученный адрес в клиенте Subversion. Когда пользователь создан в Altium Concord Pro, учетные данные используются самим сервером и службой Version Control. Если пароль сохранен со службой, т.е. аутентификация была сохранена через клиент SVN, то доступ к репозиторию будет осуществлен сразу. Если пароль не сохранен, будет открыто промежуточное диалоговое окно Authentication. В этом случае, введите учетные данные пользователя и нажмите OK, чтобы получить доступ к репозиторию. Перейдите в раздел Синхронизация пользователей сервера и VCS ниже для получения более подробной информации.
Просмотр содержимого проектного репозитория, созданного с помощью локальной SVN-службы Version Control установки Altium Concord Pro.
Проектный репозиторий, созданный с помощью локальной службы Version Control, хранит свои внутренние данные в соответствующей подпапке папки \ProgramData\Altium\ConcordProData\Repository
(для установки Altium Concord Pro по умолчанию). Непосредственный доступ к этой папке не должен осуществлять никто, кроме специалистов IT в целях обслуживания.
Синхронизация пользователей сервера и VCS
При создании нового пользователя Altium Concord Pro, заданные учетные данные (User Name и Password) этого пользователя хранятся в базе данных сервера и в службе Version Control, поскольку служба не может получить непосредственный доступ к паролю Concord Pro. Пароль хранится службой Version Control в обычном текстовом формате (в файле \ProgramData\Altium\ConcordProData\Repository\passwd
).
Записи в этом списке представляют доступ к репозиторию SVN в Concord Pro при работе со службой через Altium Designer. Могут быть случаи, что учетные данные пользователя не будут включены в файл, например если пользователи Concord Pro уже существуют при создании первого репозитория SVN (а не наоборот). Эту проблему можно решить, добавив эти комбинации имени/пароля в файл passwd
вручную или введя заново пароль каждой учетной записи пользователя в Concord Pro – в последнем случае, файл passwd
будет заполнен соответствующим образом, без необходимости в непосредственном доступе к серверному компьютеру.
В установке Altium Concord Pro по умолчанию, учетные данные пользователя хранятся службой Version Control в соответствующем файле passwd
.
Удаление репозитория
Чтобы удалить репозиторий из службы Version Control в Altium Concord Pro, нажмите Remove (), связанный с этим репозиторий, на странице VCS веб-интерфейса Concord Pro.
Обратите внимание, что удаление репозитория со страницы
Data Management - Design Repositories диалогового окна
Preferences только удаляет этот репозиторий из этой установки Altium Designer, но не из службы Version Control в Altium Concord Pro. Если вы выходите из Altium Concord Pro и входите снова, репозиторий появится снова в списке репозиториев, доступных для этой установки Altium Designer.
Внешние репозитории могут быть удалены (отключены) независимо от того, содержат они какие-либо проекты или нет. С другой стороны, локальные репозитории (созданные службой Version Control в Altium Concord Pro) не могут быть удалены, если они содержат один или множество проектов. Вы будете предупреждены об этом, и вам следует сначала удалить проекты, прежде чем удалять репозиторий.
Даже если локальный репозиторий не содержит проектов, он не удаляется, а перемещается в архивную директорию (\ProgramData\Altium\ConcordProData\RepositoryDumps
, для установки Altium Concord Pro по умолчанию). Репозиторий будет находиться в файле дампа в формате <УникальныйID>_<ИмяРепозитория>.dump
(например, 775f6c22-b9a1-468c-9f1f-4f217bb3be6b_Central Design Repository.dump
).