在项目中包含 Copilot CLI
如果想严格管理 Copilot CLI 的版本,可以把它作为 npm 包包含在项目中。 一般来说,在部署时另外安装 Copilot CLI 的方式就足够了。 另请参考 在 Laravel Cloud 中使用 和 在 GitHub Actions 中使用。前置条件
Laravel 项目中有package.json,并且生产服务器也有 Node.js 运行环境,可以安装 npm 包。
安装设置
1. 安装 npm 包
在dependencies 中安装 @github/copilot。
index.js 只包含在按平台划分的包中,因此如果要使用 index.js,请根据你的环境使用相应的包。
2. 配置 .env
在 COPILOT_CLI_PATH 中指定到 npm-loader.js 的完整路径。
base_path() 动态设置路径,请直接编辑 config/copilot.php。
部署
在部署到生产服务器时,构建资源后,请排除devDependencies 重新安装。由于 @github/copilot 位于 dependencies,因此会保留下来。
npm install --omit=dev,devDependencies 中的包会被删除,只有包含 @github/copilot 在内的 dependencies 中的包会留在 node_modules 中。
优点与注意事项
| 优点 | 注意事项 |
|---|---|
| 可以严格管理 CLI 的版本 | node_modules 的体积会增加 |
可以通过 package.json 固定版本 | CLI 的更新需要手动进行 |
| 团队所有人都可以使用相同版本 | 需要 Node.js 运行环境 |
认证
无论安装方式如何,认证方式都相同。在.env 中设置 COPILOT_GITHUB_TOKEN。
最新信息请参考 GitHub 仓库。