使用 n8n/Enterprise_features/Source_control_and_environments
为环境设置源代码控制#
将一个 Git 仓库与 n8n 实例关联,并配置你的源代码控制。 n8n 使用源代码控制来提供环境功能。更多信息请参考 n8n 中的环境(Environments in n8n)。
前提条件#
要在 n8n 中使用源代码控制,你需要一个支持以下任一访问方式的 Git 仓库:
- SSH 访问(使用部署密钥 deploy keys),或
- HTTPS 访问(使用个人访问令牌 Personal Access Tokens)
本文档假设你已熟悉 Git 及所使用的 Git 服务提供商。
第一步:设置你的仓库和分支#
对于新配置:
- 创建一个新的仓库供 n8n 使用。
- 创建所需的分支。例如,如果你计划为测试和生产分别设置不同环境,则应为每个环境创建对应的分支。
为了帮助确定你的使用场景需要哪些分支,请参考 分支模式(Branch patterns)。
第二步:在 n8n 中配置 Git#
- 进入 设置(Settings) > 环境(Environments)。
- 选择连接方式:
- SSH:在 Git 仓库 URL(Git repository URL) 中输入仓库的 SSH 地址(例如,
git@github.com:username/repo.git)。 - HTTPS:在 Git 仓库 URL(Git repository URL) 中输入仓库的 HTTPS 地址(例如,
https://github.com/username/repo.git)。
- SSH:在 Git 仓库 URL(Git repository URL) 中输入仓库的 SSH 地址(例如,
- 根据所选连接方式配置认证信息:
- 使用 SSH:n8n 支持 ED25519 和 RSA 公钥算法。ED25519 是默认算法。如果 Git 主机要求使用 RSA,请在 SSH 密钥(SSH Key) 下选择 RSA,然后复制生成的 SSH 密钥。
- 使用 HTTPS:输入你的凭据:
- 用户名(Username):你在 Git 服务提供商上的用户名。
- 令牌(Token):来自 Git 服务提供商的个人访问令牌(Personal Access Token, PAT)。
第三步:设置认证#
根据你选择的连接方式配置相应的认证机制。
SSH 认证(使用部署密钥 deploy keys)#
通过使用 n8n 提供的 SSH 密钥,在仓库中创建一个部署密钥(deploy key)来设置 SSH 访问权限。该密钥必须具有写入权限。 具体操作步骤取决于你使用的 Git 服务提供商。常见平台的帮助链接如下:
- GitHub | 管理部署密钥(Managing deploy keys)
- GitLab | 部署密钥(Deploy keys)
HTTPS 认证(使用个人访问令牌,Personal Access Tokens)#
创建一个具有仓库访问权限的个人访问令牌(Personal Access Token, PAT)。 常见平台创建 PAT 的帮助链接:
- GitHub | 管理个人访问令牌
- GitLab | 个人访问令牌
- Bitbucket | 应用密码(App passwords)
你的令牌需要具备以下权限:
- 仓库读写权限(Repository read/write access)
- 内容读写权限(Contents read/write)——适用于 GitHub
- 源代码拉取/推送权限(Source code pull/push)——适用于 GitLab
步骤 4:连接 n8n 并配置实例#
- 在 n8n 的 设置(Settings) > 环境(Environments) 中,选择 连接(Connect)。n8n 将连接到你的 Git 仓库。
- 在 实例设置(Instance settings) 下,选择你希望当前 n8n 实例使用的分支。
- 可选:勾选 受保护的实例(Protected instance),以防止用户在此实例中编辑工作流。这对于保护生产环境实例非常有用。
- 可选:为该实例选择一个自定义颜色。该颜色将显示在源代码控制的推送和拉取按钮旁的菜单中,帮助用户识别当前所处的实例。
- 点击 保存设置(Save settings)。