借助默认的 Looker Git 集成,Looker 开发者会将更改提交到其开发分支,然后将其开发分支合并到生产分支。然后,当您部署到 Looker 环境时,Looker 会使用生产分支上的最新提交。(如需了解默认 Git 工作流以及高级 Git 实现的其他选项,请参阅使用版本控制和部署文档页面。)
对于您不希望将生产分支上的最新提交用于 Looker 环境的高级 Git 实现,Looker 管理员可以启用高级部署模式。启用后,高级部署模式可让具有deploy权限的开发者指定不同的提交 SHA 或标记来部署到 Looker 生产环境,而不是使用生产分支上的最新提交。如果您想从其他分支部署提交,可以使用高级部署模式 webhook 或 API 端点。
高级部署模式有助于在多环境开发者工作流中整合代码库,其中每个环境都指向不同版本的代码库。它还让一个或多个开发者或管理员能够更好地控制部署到生产环境的更改。
启用高级部署模式后,Looker 不会提示开发者将其更改部署到生产环境。相反,Looker 会提示开发者将其更改合并到生产分支。从那里开始,只能通过以下方式部署更改:
启用高级部署模式
如需启用高级部署模式,请执行以下操作:

- 在 Looker IDE 中,依次选择图标菜单中的设置 图标和配置 标签页,以导航至项目配置 页面。
- 在项目配置 页面上,选中部署 部分下的启用高级部署模式 旁边的复选框。
- 选择保存项目配置 按钮以保存更改。
使用高级部署模式进行版本控制
启用高级部署模式后,开发者将无法再从 Looker 部署到生产环境。相反,当开发者进行提交时,Git 按钮 会提示他们将更改合并到主分支,而不是提示他们部署到生产环境。
更改会使用 webhook、API 或 部署管理器 部署到生产环境。
部署管理器
对于启用了高级部署模式的项目,具有 deploy 权限 的 Looker 开发者可以使用部署管理器将提交或标记部署到其 Looker 生产环境。
您可以通过从图标菜单中选择部署 图标来访问部署管理器。

部署管理器会显示之前使用高级部署模式部署的所有提交和标记。
如果您尚未通过高级部署模式部署提交,请点击选择提交 按钮,以查看提交历史记录以及 Looker 开发者已合并到生产分支的提交。
对于已使用高级部署模式部署提交的项目,提交历史记录还会显示提交的相关标记(如果有),并指明哪个提交是当前用于生产环境的版本。
如果生产分支的提交比已部署的提交更新,部署管理器会显示此信息,并显示 Looker 开发者已合并到生产分支的最新提交。
使用部署管理器部署提交
您可以通过以下几种方式使用部署管理器部署提交:
- 如需部署尚未部署的提交,请点击选择提交 按钮,从已合并到远程生产分支的所有提交中进行选择。(如果您想从其他分支部署提交,请使用高级部署模式 webhook 或 API 端点。)
- 如需部署远程生产分支上最近合并的提交,请点击部署最新 按钮。
- 如需部署之前已部署的提交或标记,请从部署管理器中点击其三点状 选项 菜单 ,然后点击 部署到生产环境。
如果您选择之前未部署的提交,部署管理器将显示部署提交 菜单。如需从部署提交 菜单部署提交,请按以下步骤操作:
- 如需部署提交而不为其分配标记,请选择部署时不添加标记 ,然后选择部署到环境 。否则,请保持选中标记并部署 选项。
为提交指定标记。Git 标记用于标记提交在代码库历史记录中的重要性,例如发布版本号或版本名称。请注意以下有关 Git 标记的信息:
- Git 标记在 Git 代码库中必须是唯一的。您不能在代码库中为两个不同的提交使用相同的标记。
- Git 标记不能包含空格或某些特殊字符。如需了解在 Git 中命名引用的规则,请参阅 Git 参考 文档。
您可以选择为标记添加说明,以提供有关提交的更多详细信息。
选择部署到环境 ,将提交部署到 Looker 实例的生产版本。
部署提交后,部署管理器会将该提交标记为 Looker 生产环境中的当前版本。
使用 webhook 进行部署
对于启用了高级部署模式的项目,您可以使用部署 webhook 将更改部署到生产环境。
如需设置部署 webhook,您必须先添加 webhook 密钥,然后从项目配置页面为 Looker 项目添加 webhook 密钥。添加 webhook 密钥可确保只有获得授权的相关方才能触发部署 webhook。
有两个 webhook 可用于在启用高级部署模式的情况下将更改部署到生产环境。一个 webhook 用于部署分支的头部,另一个用于部署特定的 Git SHA 或标记。
用于部署分支头部的 webhook 采用以下格式:
<Looker URL>/webhooks/projects/<LookML project name>/deploy/branch/<Git branch name>
用于部署提交 SHA 或标记的 webhook 采用以下格式:
<Looker URL>/webhooks/projects/<LookML project name>/deploy/ref/<commit SHA or tag>
将尖括号 < >docsexamples.dev.looker.com Looker 实例上为 e_faa 项目部署 v1.0 标记名称:
https://docsexamples.dev.looker.com/webhooks/projects/e_faa/deploy/ref/v1.0
使用 API 进行部署
对于启用了高级部署模式的项目,您可以使用 Looker API 将更改部署到生产环境。
如需使用 API 进行部署,发出调用的 API 用户需要具有 deploy 权限。如需详细了解如何对 Looker API 进行身份验证和使用该 API,请参阅 Looker API 身份验证和 API 使用入门文档页面。
如需使用 API 进行部署,请使用 deploy_ref_to_production 端点。可以通过多种不同的方式调用此端点。以下示例适用于 HTTPS 和 SDK 方法。
HTTPS
如需使用 deploy_ref_to_production API 端点手动部署,请参阅以下使用 HTTPS 方法的示例。如需详细了解如何使用 C网址 请求手动调用 API 的示例,请参阅如何对 API GitHub 自述文件进行身份验证,或使用API Explorer。您可以从 Looker Marketplace 在 Looker 实例上安装 API Explorer。
在 HTTPS 请求中使用以下示例,通过 deploy_ref_to_production API 端点部署分支的头部或特定的提交 SHA 或标记:
部署分支的头部:
<HOST_URL>/api/4.0/projects/<PROJECT_ID>/deploy_ref_to_production?branch=<BRANCH_NAME>
部署提交 SHA 或标记:
<HOST_URL>/api/4.0/projects/<PROJECT_ID>/deploy_ref_to_production?ref=<SHA_OR_TAG>
SDK
< >或者,您也可以使用 Looker 的某个 SDK,而不是手动向 API 发出请求。SDK 会处理身份验证、参数和响应序列化以及其他相关事宜的详细信息。
使用 SDK 方法通过 deploy_ref_to_production 进行部署如下所示:
部署分支的头部:
deploy_ref_to_production(<PROJECT_ID>, {branch: <BRANCH_NAME>})
部署提交 SHA 或标记:
deploy_ref_to_production(<PROJECT_ID>, {ref: <SHA_OR_TAG>})