项目是管理您的流程文件的一种新方式。与其将您的流程视为一对简单的文件,不如将其看作创建可再分发的 Node-RED 应用所需的一切。
它们由 Git 仓库支持,这意味着所有文件都受到完整的版本控制,并允许开发人员使用熟悉的工作流程与他人协作。
在 0.18 发布中,项目功能处于预览模式。这意味着必须在设置文件中启用它。
该功能目前不适用于 IBM Cloud 环境。
要启用项目功能,请编辑您的 settings.js
文件,在 module.exports
块中添加以下选项,然后重新启动 Node-RED。
settings.js
文件导出一个 JavaScript 对象。
要配置 Node-RED,您需要了解如何通过添加新或修改现有键/值对来修改 JavaScript 对象,例如下面的 editorTheme
。
editorTheme: {
projects: {
enabled: true
}
},
也可以通过将环境变量 NODE_RED_ENABLE_PROJECTS
设置为 true
来启用项目功能。
该功能依赖于可用的 git
和 ssh-keygen
命令行工具。Node-RED 在启动时将检查它们是否存在,并在缺失时通知您。
当您打开编辑器时,您会看到一个欢迎屏幕,邀请您使用现有的流程文件创建第一个项目。
它将引导您完成以下步骤:
设置您的版本控制客户端
Node-RED 使用开源工具 Git 进行版本控制。它跟踪您项目文件的更改,并让您将其推送到远程仓库。
当您提交一组更改时,Git 会记录是谁进行了更改,并附上用户名和电子邮件地址。用户名可以是您想要的任何东西——不必是您的真实姓名。
您可能已经配置了 Git 客户端——在这种情况下,Node-RED 将重用这些设置。
您可以随时通过主 Node-RED 设置对话框更改这些设置。
创建您的项目
下一步让您为您的项目命名并给出描述。
创建您的项目文件
Node-RED 会自动将您现有的流程文件迁移到您的项目中。如果需要,您可以在此处选择重命名它们。
设置您的凭据文件的加密
由于您可能选择在 GitHub 等公共网站上共享您的项目,因此强烈建议您加密您的凭据文件。
要加密它,您需要选择一个密钥,用于保护该文件。此密钥不会存储在项目中。如果其他人克隆您的项目,您将需要提供密钥以解密凭据文件。否则,他们需要编辑流程以提供自己的凭据。
该项目将在以下目录中创建: ~/.node-red/projects/<project-name>
。
创建项目后,您可以继续像往常一样使用 Node-RED 编辑器。编辑器中添加了一些新部分,用于处理您的项目。
信息侧边栏现在在顶部显示您正在处理的项目。项目名称旁边有一个按钮,可以打开项目设置对话框。
您还可以从主菜单中的 Projects -> Project Settings
选项访问此设置。
对话框有三个选项卡:
每个项目都有自己的 package.json
文件,其中包含项目所依赖的节点模块列表。Node-RED 编辑器跟踪您在流程中使用的节点,并帮助您保持该依赖项列表的最新状态。
在上面的截图中,当前项目的 package.json
文件中列出了三个模块,每个模块处于不同状态:
node-red-node-mysql
当前未安装node-red-node-random
当前流程正在使用node-red-node-rbe
列出,但当前流程未使用最后,node-red-node-smooth
提供了一个当前流程正在使用的节点,但该模块未列为依赖项。
确保依赖项列表保持最新状态是与他人共享项目的重要条件——这将帮助用户安装必要的模块。
项目设置选项卡让您管理流程文件、凭据的加密配置,并配置您的本地 git 分支和远程仓库。
侧边栏中新增了一个 history
选项卡。在此处,您可以管理项目的版本控制。该选项卡有两个部分:
每当您更改项目文件,例如通过部署新流程配置时,它将列在“本地文件”部分。您可以单击文件名查看更改的差异。当您将鼠标悬停在文件上时,您会看到一个 + 按钮——单击该按钮将暂存文件,将其移动到“待提交更改”列表。
当您已暂存要提交的文件时,单击 commit
按钮,输入消息并确认。
提交历史部分列出当前分支中的所有提交。当您创建项目时,Node-RED 会自动提交项目的初始默认文件集。
列表顶部是“分支”按钮。该按钮允许您在仓库中检出/创建分支。
如果您的仓库配置了远程仓库,还有一个按钮显示您的本地仓库与远程相比超前和/或落后多少个提交。它允许您选择要跟踪的远程/分支,并将您的更改推送/拉取到远程。
这是 Node-RED 编辑器尝试简化用户体验的一个领域,并未暴露 Git 提供的所有各种选项。这是一个我们欢迎反馈的领域。例如,它不提供将您的本地提交变基或强制推送更改到远程的选项。您仍然可以通过回到命令行来执行这些操作。
在迁移现有流程文件并创建您的第一个项目后,您可以创建其他项目。
从菜单中选择 Projects -> New
打开项目对话框。
这提供了三种选项:
Node-RED 每次仅运行一个项目。通过打开另一个项目,您将更改正在运行的流程。
“打开项目”视图还允许您通过在列表中将鼠标悬停在项目上并单击删除按钮来删除项目。您无法删除当前活动项目。
这让您创建一个新项目。它提供与“创建您的第一个项目”相同的选项,但合并为一个。
这让您克隆一个现有的远程仓库。您可以使用 http(s)
或 git/ssh
url 来设置仓库。如果该仓库需要身份验证,您必须在此处提供。
注意: 对于 http
url,请不要在 url 本身中包含您的用户名和/或密码。您可以在提示时单独提供这些信息。
对于来自 GitHub 的 ssh
url,您需要将其更改为
git@github.com:username/project
变为 ssh://git@github.com/username/project
Node-RED 目前不使用您可能为 git 客户端配置的任何凭据助手。这是我们希望社区反馈的一个领域。
对于 git/ssh
,Node-RED 将提供可用 ssh 公钥的列表。该列表是通过扫描 ~/.ssh
查找以 .pub
结尾的文件,这些文件具有对应的私钥文件。它还允许您通过主设置对话框的“Git 配置”选项卡生成新的公钥/私钥对。这些文件存储在 ~/.node-red/projects/.sshkeys/
下。如果您启用 adminAuth
,这些文件的作用域仅限于当前登录用户,因此他们不需要共享远程凭据。
版权所有 OpenJS Foundation 和 Node-RED 贡献者。保留所有权利。OpenJS Foundation 拥有并使用注册商标。有关 OpenJS Foundation 的商标列表,请参阅我们的 商标政策 和 商标列表。未在 OpenJS Foundation 商标列表 中列出的商标和徽标是其各自持有者的商标™或注册商标®。使用它们并不意味着与它们有任何关联或认可。
OpenJS Foundation | 使用条款 | 隐私政策 | OpenJS Foundation 章程 | 商标政策 | 商标列表 | Cookie 政策