软件开发流程故障排除
- Tier: Premium, Ultimate
- Add-on: GitLab Duo Core, Pro, or Enterprise
- Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
- Status: Beta
一般指导
如果您遇到问题,请确保您已:
- 安装了最新版本的 GitLab Workflow VS Code 扩展。
- 拥有一个符合 先决条件 的项目。
- 在 VS Code 中打开了仓库。
- 已检出分支。
有关这些步骤的详细信息,请参阅 先决条件 和 如何连接到您的仓库。
查看调试日志
您可以通过查看调试日志来排查一些问题。
- 打开本地调试日志:
- 在 macOS 上:Cmd + ,
- 在 Windows 和 Linux 上:Ctrl + ,
- 搜索设置 GitLab: Debug 并启用它。
- 打开语言服务器日志:
- 在 VS Code 中,选择 View > Output。
- 在底部的输出面板中,在右上角, 从列表中选择 GitLab Workflow 或 GitLab Language Server。
- 检查是否有错误、警告、连接问题或身份验证问题。
网络问题
您的网络可能会阻止与 Agent Platform 服务的连接, 例如通过使用防火墙。默认情况下,Agent Platform 使用 gRPC (Google 远程过程调用)连接。网络必须允许 HTTP/2 流量通过到 服务才能使 gRPC 正常工作。
在 IDE 中,gRPC 可以 更改为 WebSocket 连接。
要确认您可以使用 gRPC 连接到 Agent Platform 服务:
- 在 Google Chrome 或 Firefox 中,打开开发者工具并选择 Network 选项卡。
- 右键单击列标题以显示 Protocol 列。
- 在地址栏中,输入
https://duo-workflow-svc.runway.gitlab.net/DuoWorkflow/ExecuteWorkflow。 - 确保请求成功,并且 Protocol 列在 Chrome 中包含
h2或在 Firefox 中包含HTTP/2。
如果请求失败或未显示 HTTP/2 协议:
- 可能配置了 Netskope 或 Zscaler 等安全系统来阻止或检查流量。
- HTTP/2 协议降级为 HTTP/1.1,这会阻止 Agent Platform 正常工作。
要解决此问题,请要求您的网络管理员将 https://duo-workflow-svc.runway.gitlab.net/DuoWorkflow/ExecuteWorkflow
添加到正确的允许列表中,或将其免除流量检查。
使用 WebSocket 连接代替 gRPC
如果您的网络条件不允许 gRPC 连接,WebSocket 是 VS Code 和 JetBrains IDE 中的替代方案:
-
在 VS Code 中:
- 选择 File > Preferences > Settings
- 搜索设置 GitLab: Duo Agent Platform: Connection Type,然后选择
WebSocket。
-
在 JetBrains 中:
- 在顶部栏,选择主菜单,然后选择 Settings。
- 在左侧边栏,选择 Tools > GitLab Duo。
- 在 GitLab Duo Agent Platform > Connection Type 部分,选择
WebSocket。
IDE 配置
您可以尝试几种方法来确保您的仓库已正确配置和连接。
在 GitLab Workflow 扩展中查看项目
首先,确保在 VS Code 的 GitLab Workflow 扩展中选择了正确的项目。
- 在 VS Code 中,在左侧边栏选择 GitLab Workflow ( )。
- 确保项目已列出并已选中。
如果项目名称旁边出现错误消息,请选择它以显示需要更新的内容。
例如,您可能有多个仓库需要选择一个,或者根本没有仓库。
没有 Git 仓库
如果您的工作区没有初始化 Git 仓库,您必须创建一个新仓库:
- 在左侧边栏,选择 Source Control ( )。
- 选择 Initialize Repository。
当仓库初始化后,您应该在 Source Control 视图中看到名称。
有 Git 仓库但没有 GitLab 远程
您可能有 Git 仓库,但它没有正确连接到 GitLab。
- 在左侧边栏,选择 Source Control ( )。
- 在 Source Control 标签上,右键单击并选择 Repositories。
- 在您的仓库旁边,选择省略号 ( ),然后选择 Remote > Add Remote。
- 输入您的 GitLab 项目 URL。
- 将新添加的远程作为您的上游。
多个 GitLab 远程
您的仓库可能配置了多个 GitLab 远程。 要选择正确的远程:
- 在左侧边栏,选择 Source Control ( )。
- 在状态栏上,选择当前的远程名称。
- 从列表中选择适当的 GitLab 远程。
- 确保所选的远程属于 GitLab 中的组命名空间。
多个 GitLab 项目
如果您的 VS Code 工作区包含多个 GitLab 项目,您可能想要 关闭所有您不使用的项目。
要关闭项目:
- 在左侧边栏,选择 Source Control ( )。
- 确保显示仓库:在 Source Control 标签上,右键单击并选择 Repositories。
- 右键单击要关闭的仓库并选择 Close Repository。
项目不在组命名空间中
GitLab Duo Agent Platform 要求项目属于组命名空间。
要确定您的项目所在的命名空间,查看 URL。
如有必要,您可以 将您的项目转移到组命名空间。
仍然有问题?
请联系您的 GitLab 管理员寻求帮助。