使用 Altium On-Prem Enterprise Server 的本地版本控制服务

Enterprise Server 安装通过其 Version Control 服务提供本地化(同时也是集中式)的版本控制。该服务在你需要的地方直接提供版本控制能力——在本地即可,无需寻找或付费购买外部 VCS 管理软件。

通过以这种集中方式定义设计仓库,组织可以完全控制其设计人员能够访问和使用哪些仓库。

Relevance of the information on this page:

全新安装的 Enterprise Server 仅提供一个基于 Git 的设计仓库,用于容纳你所有的 Workspace 设计项目——仅此而已!这避免了与 Enterprise Server 本地 Version Control 服务相关的任何设置与复杂性。你只有一个设计仓库——Versioned Storage——供所有设计人员访问并向其中发布。因此,Workspace 浏览器界面的 VCS 页面将仅用于信息展示——你无法添加新仓库,这个单一的 Git 仓库也无法以任何方式修改或删除。因此,该页面上的信息不适用于你。

如果你是从启用了 SVN 仓库的某个版本或服务器产品升级到 Enterprise Server,那么升级后这些 SVN 仓库仍将保持启用(请确保刷新你的 Altium On-Prem Enterprise Server 许可)。这使你能够继续使用之前(已建立)的设计流程。在这种情况下,你可以继续通过本地 Version Control 服务(仅 SVN)创建仓库,或连接到外部仓库(SVN 或 Git)。因此,该页面上的信息仍与你相关。

Important:请注意,否则 按钮将呈灰色不可用,且无法创建/添加仓库。

有关 Design Repositories 以及通过 Altium Designer 使用它们的更多信息,请参阅 Using External Version Control

主要优势

使用这种集中式 Version Control 服务有两个关键优势:

  1. Altium Designer 与 SVN 共享统一的用户与权限管理。当你登录 Enterprise Server 时,Version Control 服务会使用你的会话/凭据。
  2. 通过 Enterprise Server 定义的仓库(通过 Enterprise Server Workspace 的浏览器界面中的 VCS 页面(Admin – VCS))会在登录时自动同步到 Altium Designer,因此用户无需关心 URL、协议、密码等。只需在 Enterprise Server 上配置一次,并按需共享给目标用户即可。
当为 Enterprise Server 创建新用户时,为该用户定义的 Password 会同时存储在 Enterprise Server 与 SVN 服务中,因为后者无法直接从前者获取密码。

创建仓库

仓库可以通过本地 Version Control 服务创建(仅 SVN),也可以连接外部仓库(SVN 或 Git)。所有仓库会在 Workspace 浏览器界面的 VCS 页面(Admin – VCS)中集中管理,管理内容包括:

  • 显示名称、描述以及仓库路径。
  • 配置可访问性——哪些特定用户可以访问(对于通过本地 Version Control 服务定义的仓库,则可按组控制)。
  • 可用性——集中添加或移除,而不是让每位设计人员各自独立创建并连接仓库。
默认提供两个 Design Repositories,由本地 Version Control 服务提供,分别命名为 DefaultRepository(SVN 仓库)和 Versioned Storage(Git 仓库)。DefaultRepository 仓库不能重命名,但你可以为其添加描述、管理用户访问权限,或按需移除。Versioned Storage 仓库仅用于集成存储 Workspace 项目,不能重命名、共享或移除。

当 Altium Designer 用户登录 Workspace 时,其可用的 Design Repositories 会自动添加到 Preferences 对话框的 Data Management – Design Repositories page 中。请注意,该列表还会包含从此 Preferences 页面手动添加的任何“未受管”仓库。

集中定义组织的 Design Repositories 访问权限。仓库可以是 Enterprise Server 安装内部的(使用本地 Version Control 服务定义),也可以是外部的(使用 Altium Designer 内置 SVN、第三方 SVN 或 Git 服务)。访问控制通过 Workspace 浏览器界面的 VCS  页面执行。当用户登录 Workspace 时,其可用的 Design Repositories 会自动添加到 Preferences  对话框的 Data Management – Design Repositories 页面。集中定义组织的 Design Repositories 访问权限。仓库可以是 Enterprise Server 安装内部的(使用本地 Version Control 服务定义),也可以是外部的(使用 Altium Designer 内置 SVN、第三方 SVN 或 Git 服务)。访问控制通过 Workspace 浏览器界面的 VCS 页面执行。当用户登录 Workspace 时,其可用的 Design Repositories 会自动添加到 Preferences 对话框的 Data Management – Design Repositories 页面。

添加仓库

要添加 Design Repository,请点击页面右上角的 按钮。将出现 Add Repository 窗口,用于定义仓库。

只能通过本地 Version Control 服务创建 SVN 类型仓库。可以链接现有(外部)仓库,且这些仓库可以是 SVN 或 Git。

所需属性取决于你是通过本地 Version Control 服务创建新仓库,还是链接到现有的外部仓库:

  • New – 为仓库指定名称和描述。
  • Existing – 除名称和描述外,还需要提供仓库的 URL ,以及用于访问该仓库的有效凭据(User NamePassword)(如需要)。
创建 Enterprise Server 内部仓库时,名称应以字母开头,并且可包含 A-Z、a-z 或 0-9。名称中间允许使用下划线、短横线和空格。不能使用以下词:AUXCOM1-COM9LPT1-LPT9CONNULPRN。外部仓库没有命名限制。

通过 Enterprise Server 的本地 Version Control 服务创建新的基于 SVN 的 Design Repository,或链接到在 Enterprise Server 外部创建的现有仓库(SVN 或 Git)。通过 Enterprise Server 的本地 Version Control 服务创建新的基于 SVN 的 Design Repository,或链接到在 Enterprise Server 外部创建的现有仓库(SVN 或 Git)。

已链接的外部 Design Repository 会在仓库列表中通过其 External 属性被勾选()来区分。

要在后续阶段编辑 Design Repository 的属性,点击其对应的 Edit 控件()。要移除 Design Repository,点击其对应的 Remove 控件()。

仓库列表会按 Name 自动按字母顺序排序:通过 Version Control 服务定义的本地仓库优先列出,其后是外部仓库。基于 Git 的 Versioned Storage 仓库——无法修改或删除——始终显示在列表顶部。

共享仓库

在集中管理 Design Repositories 之后,你需要确保需要访问某个仓库的人员——包括将进行板级设计的设计人员——拥有相应访问权限。这通过共享该仓库(更准确地说是管理其访问权限)来实现。为此,点击该仓库对应的 Share 控件()。

将出现 Manage Permissions 窗口,其中包含将仓库共享给其他用户所需的全部控件。

在集中组织 Design Repositories 后,与他人共享只需管理每个仓库的权限即可。在集中组织 Design Repositories 后,与他人共享只需管理每个仓库的权限即可。

需要注意的事项:

  • 对于通过 Enterprise Server 的 Version Control 服务创建的本地仓库(即非外部仓库),其默认权限会将该仓库共享给创建该仓库的用户以及 Administrators 组。两者均拥有完整的读/写访问权限。
  • 对于外部仓库,默认不与任何人共享——甚至包括通过界面添加该连接的用户。
  • 只有本地仓库(非外部)才能共享给 Enterprise Server 中定义的组,或公开共享。组会列在单个用户之后。
  • 在权限方面,当启用 Can Write 选项()时,用户/组拥有读/写访问权限;若禁用该选项,则仅有读权限。
Be Aware:共享内部设计仓库时的权限设置并未完全按预期工作。即使某个内部设计仓库本身以只读方式共享给某个服务器用户,该用户仍然能够在该仓库内创建新的 Workspace 项目,并对所创建的对应项目文件夹获得完整的读/写权限。请注意,这种错误行为仅适用于该用户创建的新 Workspace 项目及其文件夹;该用户对仓库中的其他文件夹不具备写权限。
  • 要移除某个已共享访问权限的用户/组,点击对应的 Remove 控件()。

对本地 SVN 设计仓库的外部访问

通过 Enterprise Server 的本地 Version Control Service 创建的 Design Repository,可以使用 SVN 客户端(如 TortoiseSVN)进行访问。访问使用常规网络协议(目前支持 svn://)。可从两个位置获取/复制正确的仓库地址:

  • 工作区浏览器界面的 VCS 页面——在目标仓库的 Repository Path 字段中。

从 Enterprise Server 创建的“内部”仓库会显示其相对于 Enterprise Server 的地址路径,即主机 PC 的 localhost 地址。从 Enterprise Server 创建的“内部”仓库会显示其相对于 Enterprise Server 的地址路径,即主机 PC 的 localhost 地址。

从 Altium Designer(或任何不在 Enterprise Server 主机 PC 上的应用程序)的角度来看,仓库地址路径基于其主机 PC 的名称。从 Altium Designer(或任何不在 Enterprise Server 主机 PC 上的应用程序)的角度来看,仓库地址路径基于其主机 PC 的名称。

显示的地址取决于你是从安装了 Enterprise Server 的同一台机器访问仓库(svn://localhost/<RepositoryName>),还是从远程 PC 访问(svn://<ComputerName>/<RepositoryName>,其中 ComputerName 是 Enterprise Server 所在 PC 的名称)。

在你的 Subversion 客户端的仓库浏览功能中使用获取到的地址。首次访问时会打开一个中间的 Authentication 对话框,要求提供有效的连接凭据。输入工作区用户账户的用户名和密码以继续。以下情况下这些凭据有效:

  • 该用户账户是在 Enterprise Server 中创建仓库 after 添加的。适用于已创建仓库的用户可在 Enterprise Server PC 的 \ProgramData\Altium\Altium365Data\Repository 文件夹中找到的 passwd 文件中查看——见下文。
  • 该仓库已通过服务器 Manage Permissions for <repository name> 窗口中的 Add User 命令添加该用户名的方式共享给该用户账户。这可在 Enterprise Server PC 的 \ProgramData\Altium\Altium365Data\Repository 文件夹中找到的仓库 authz 文件中体现。

浏览通过 Enterprise Server 安装的本地、基于 SVN 的 Version Control 服务创建的 Design Repository 内容。浏览通过 Enterprise Server 安装的本地、基于 SVN 的 Version Control 服务创建的 Design Repository 内容。

通过本地 Version Control 服务创建的 Design Repository,其内部数据存储在 \ProgramData\Altium\Altium365Data\Repository 文件夹中的对应子文件夹内(针对 Enterprise Server 的默认安装)。建议不要更改或编辑该文件夹中的文件,除非由 IT 人员出于维护目的进行操作。

Enterprise Server & VCS 用户同步

当为工作区创建新用户时,该用户定义的凭据(User NamePassword)会同时存储在 Enterprise Server 的数据库和 Version Control 服务中,因为后者无法直接从前者获取密码。密码以纯文本格式存储在 Version Control 服务中(位于 \ProgramData\Altium\Altium365Data\Repository\passwd 文件)。

该列表中的条目用于在通过 Altium Designer 使用该服务时访问 Enterprise Server SVN 仓库。有时用户的凭据可能未包含在该文件中,例如当在创建第一个 SVN 仓库时工作区用户已存在(而不是相反)。可通过手动将这些用户名/密码组合添加到 passwd 文件来解决,或在工作区中为每个用户配置文件重新输入密码——后者会相应填充 passwd 文件,并且无需直接访问 Enterprise Server PC。

在 Enterprise Server 的默认安装中,Version Control 服务的用户凭据存储在关联的 Passwd 文件中。在 Enterprise Server 的默认安装中,Version Control 服务的用户凭据存储在关联的 Passwd 文件中。

删除仓库

要从 Enterprise Server 的 Version Control 服务中删除仓库,请在工作区基于浏览器的界面 VCS 页面上,单击与该仓库关联的 Remove 控件()。

请注意,在 Altium Designer 中从 Preferences 对话框的 Data Management – Design Repositories page 移除仓库,只会使该仓库不再被该 Altium Designer 实例使用。它不会从 Enterprise Server 的 Version Control 服务中删除该仓库。如果你从 Enterprise Server 登出再重新登录,该仓库会再次出现在该 Altium Designer 实例的可用仓库列表中。

外部仓库条目可以删除,无论仓库中是否包含任何项目。另一方面,本地仓库(即通过 Enterprise Server 的 Version Control 服务在内部创建的仓库)如果包含一个或多个项目,则无法删除。系统会提示你这一点,你应先移除项目,然后才能继续删除。

即便如此,如果本地仓库不包含项目,它也不会被真正删除,而是会被移动到归档目录(默认 Enterprise Server 安装为 \ProgramData\Altium\Altium365Data\RepositoryDumps)。该仓库将包含在一个 Dump 文件中,并带有唯一 ID 前缀(例如 775f6c22-b9a1-468c-9f1f-4f217bb3be6b_central design repository.dump)。

AI-LocalizedAI 翻译
如您发现任何问题,请选中相关文本/图片,并按 Ctrl + Enter 键向我们提交反馈。
Content