基于 Git 的版本控制

Git 类型的资源库是在 Altium Designer 外部创建的,本地工作 Git 资源库的内容可通过打开其主机文件夹中的文件来访问。远程和本地工作 Git 仓库的管理通常通过公司系统和外部 Git 工具进行,而文件级操作(提交、推送、更新等)则在 Altium Designer 编辑环境中进行。

  • 要在 Altium Designer 中访问 Git 版本控制功能,必须安装 VCS Provider – Git 软件扩展。Altium Designer 默认安装了该扩展。可手动安装或移除。

    有关管理扩展的更多信息,请参阅 Extending Your Installation页面(Altium Designer DevelopAltium Designer AgileAltium Designer)。

  • 请注意,Git 仓库是在 Altium Designer 外部处理的。

  • 虽然 Git VCS 提供了一系列数据传输协议,但 Altium Designer 目前仅支持 HTTP/HTTPS协议仅用于本地 Git 仓库与其远程主仓库之间的连接。了解有关协议的更多信息。
  • 当向外部 Git VCS 下的项目推送更改时,如果该设计所在的版本库使用 SSH 协议进行连接,您将可以选择尝试将该版本库更新为使用受支持的 HTTPS 连接协议(前提是版本库本身支持该协议)。
  • 请注意,从 Altium Designer 处理 GitHub 托管的项目时,必须使用个人访问令牌。否则,将项目推送到版本库时将出现验证错误。了解有关创建个人访问令牌的更多信息。

添加到 Git 版本控制

作为一个分布式版本控制系统,Git 使用与 SVN 不同的工作流程,尽管在 Altium Designer 中处理已建立的项目文件时,两者的差异微乎其微。简而言之,Git 适用于多个版本库之间的数据传输,而不是专注于单个版本库目标的依赖性。

► 如需了解更多信息,请参阅Git 网站和《版本控制要点》(Version Control Essentials),了解适用原则的概述。

Git VCS 系统通常基于一个集中的远程 Git 服务器,该服务器可根据需要托管多个 Git 仓库。Git 快速、轻量级的特性适合为每个项目创建一个远程仓库,然后将其作为工作仓库克隆(复制)给正在处理项目的任何用户。用户工作仓库中的更新文件会被 "推送 "到 Git 服务器上的远程仓库,以实现同步。

远程仓库也可以是一个共享型(裸仓库)Git 仓库,位于一个方便的位置,比如共享网络资源上。要使用 Git 命令行工具创建共享的远程 Git 仓库,请使用 git init --bare命令。

在 Git 系统中建立 Altium Designer 项目的方法取决于公司的基础架构和实践,并涉及 Altium Designer 外部的工具和流程。但是,一旦项目进入版本控制系统并作为本地工作库可用,在 Altium Designer 中使用 Git VCS 与使用 SVN VCS 几乎是一样的。

将项目添加到 Git

举例来说,可以使用基本的Git 命令行工具将现有的 Altium Designer 项目添加到本地 Git 仓库。通过这种方法,项目文件夹将成为本地(工作)Git 仓库,并与可用的远程 Git 仓库链接并最终更新。

这些工具用于

  1. 在项目文件夹中创建(初始化)工作 Git 仓库。
  2. 将项目文件添加到 Git 版本控制中。文件 *.*文件规格会添加文件,但不会添加文件夹。
  3. 指定指向网络服务器上共享远程 Git 仓库的链接引用PCrepo是远程仓库 URL 的指定本地别名。

正在添加到本地 Git 仓库的项目正在添加到本地 Git 仓库的项目

下面的提交推送过程也可以使用命令行工具完成,但在本示例中,这些步骤是在 Altium Designer 中完成的,如下所述。

在 Altium Designer 中打开项目时,项目存储管理器面板中的文件状态为 Scheduled for Addition()。然后提交到工作存储库时,文件将变为 Ahead of Server() 的状态,因为它们还没有处于远程 Git 仓库的版本控制之下。

  排定为 "排定添加 "和 "排在服务器前面 "的文件

Push命令会将本地版本库文件更新到远程 Git 服务器,远程 Git 服务器可能会请求目标版本库的有效凭证--这是一个一次性的过程。

文件在请求有效凭证后更新文件在请求有效凭证后更新

Altium Designer 项目现在已完全处于 Git 版本控制之下,其他用户可从远程 Git 仓库访问该项目。例如,其他用户可以将该版本库克隆到本地计算机上,并最终在协作工作流中将编辑好的文件推送回远程版本库。

请注意,上述过程只是一个手动示例,说明如何将项目添加到远程 Git 服务器。成熟的 Git VCS 安装很可能有GUI 工具或自动化系统,在管理员的控制下,建立和检索工作中的 VCS 项目的过程非常简单。

AltiumWorkspace就是基于服务器的高级系统的一个例子,它使用的 Git 仓库具有支持透明 VCS 交互的自动化功能。

克隆 Git 仓库

Altium Designer 可从项目的本地文件夹(工作库)对已添加到 Git 版本控制的本地项目进行编辑,然后将提交的更改更新到远程 Git 仓库。本地版本库和远程版本库通过 VCS Push命令链接并最终同步。

其他希望协作设计的用户可以通过将远程 Git 仓库克隆到本地工作仓库来访问项目。从远程 Git 仓库访问文件的方法因公司系统和方法而异,但克隆远程仓库内容到本地工作仓库的基本方法是使用 Git 命令; git clone [remote repository URL] [target working repository folder],如下图所示。

已提交的修改更新到远程 Git 仓库已提交的修改更新到远程 Git 仓库

该过程会将共享的远程仓库复制到本地工作仓库,并自动从主分支签出最新的 (HEAD) 版本。然后可以在 Altium Designer 中对文件进行编辑、保存和提交到 VCS,并最终推送回远程 Git 仓库。

连接到现有的 Git 仓库

Altium Designer 不提供创建新 Git 仓库或连接现有 Git 仓库的控件。不过,您可以通过其他方式(Git 用户喜欢的传统技术)有效地连接到现有的此类版本库。具体方法如下

  1. 创建您的远程 Git 仓库,或访问您公司的外部仓库--您的 Altium Designer 项目就存储在该仓库中。
  2. 克隆该仓库,创建本地工作 Git 仓库。
  3. 从本地仓库打开 Altium Designer 项目。

Altium Designer 会识别该项目是否处于基于 Git 的版本控制下,并提供与 VCS 相关的状态以及处理文件的命令/函数(包括提交(提交到本地工作 Git 仓库)和推送(从本地 Git 仓库推送到远程 Git 仓库))。

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

您可使用的功能取决于您所选择的 Altium 解决方案 —— Altium DevelopAltium Agile(Agile Teams 或 Agile Enterprise 版本),或仍在有效订阅期内的 Altium Designer。

如果您在软件中未找到文中提及的功能,请联系 Altium 销售团队了解更多信息。

旧版文档

Altium Designer 文档不再提供版本区分。如果您需要访问 Altium Designer 旧版本的文档,请前往其他安装程序页面的旧版文档部分。

Content