GitHub Pages 部署

本页介绍使用下一个主要版本 dpl v2 进行部署,该版本目前处于 beta 发布阶段。请参阅 我们的博客文章 以了解详细信息。当前默认版本为 dpl v1。查看 dpl v1 文档

请务必阅读 v2 部署概述

Travis CI 可以在构建成功后部署到 GitHub Pages

对于最小的配置,请将以下内容添加到您的 .travis.yml

deploy:
  provider: pages:git
  token: <encrypted token>
  edge: true # opt in to dpl v2

或者,您可以使用 deploy_key

deploy:
  provider: pages:git
  deploy_key: <deploy_key>

您可以使用具有 public_reporepo 范围的 个人访问令牌(私有存储库需要 repo)。

状态 #

对 GitHub Pages 部署的支持是 *稳定的**。

已知选项 #

使用以下选项进一步配置部署。需要 tokendeploy_key 之一。

repo 存储库标识 — 类型:字符串,默认值:存储库标识
token 具有存储库权限的 GitHub 令牌 — **机密**,类型:字符串,别名:github_token
deploy_key 包含私有部署密钥的文件路径,该密钥对存储库具有写入权限 — 类型:字符串,请参阅:https://developer.github.com/v3/guides/managing-deploy-keys/#deploy-keys
target_branch 要强推到的分支 — 类型:字符串,默认值:gh-pages
keep_history 创建增量提交而不是强推 — 类型:布尔值,默认值:true
commit_message 类型:字符串,默认值:Deploy %{project_name} to %{url}:%{target_branch}
allow_empty_commit 允许创建空提交 — 类型:布尔值,需要:keep_history
verbose 详细说明部署过程 — 类型:布尔值
local_dir 要推送到 GitHub Pages 的目录 — 类型:字符串,默认值:.
fqdn 将给定的域名写入 CNAME 文件 — 类型:字符串
project_name 仅在提交消息中使用(默认为 fqdn 或当前存储库标识)— 类型:字符串
name 提交者名称 — 类型:字符串,注意:默认为当前 Git 提交作者名称
email 提交者电子邮件 — 类型:字符串,注意:默认为当前 Git 提交作者电子邮件
committer_from_gh 使用令牌的所有者名称和电子邮件进行提交 — 类型:布尔值,需要:token
deployment_file 启用创建部署信息文件 — 类型:布尔值
url 类型:字符串,别名:github_url,默认值:github.com

共享选项 #

strategy GitHub Pages 部署策略 — 类型:字符串,默认值:git,已知值:apigit
cleanup 在部署之前从 Git 工作目录清理构建工件 — 类型:布尔值
run 在部署成功完成后的命令 — 类型:字符串或字符串数组

环境变量 #

如果所有选项都以 GITHUB_PAGES_ 为前缀,则可以作为环境变量提供。

例如,token 可以作为

  • GITHUB_TOKEN=<token>
  • PAGES_TOKEN=<token>

    插值变量 #

以下变量可用于在 commit_message 上进行插值

  • deploy_key
  • email
  • fqdn
  • git_author_email
  • git_author_name
  • git_branch
  • git_commit_author
  • git_commit_msg
  • git_sha
  • git_tag
  • local_dir
  • name
  • project_name
  • repo
  • target_branch
  • url

插值使用语法 %{variable-name}。例如,"Current commit sha: %{git_sha}" 将生成包含当前 Git sha 的字符串。

此外,当前构建环境中存在的环境变量可以通过标准 Bash 变量插值使用。例如:“Current build number: ${TRAVIS_BUILD_NUMBER}”。查看 此处 以了解设置的默认环境变量列表。

保护机密 #

机密选项值应作为构建配置 (.travis.yml 文件) 中的加密字符串或存储库设置中的环境变量提供。

环境变量可以在存储库的设置页面设置,也可以使用 travis env set 设置

travis env set GITHUB_TOKEN <token>

要将选项值添加到 .travis.yml 文件时对其进行加密,请使用 travis encrypt

travis encrypt <token>

或者使用 --add 直接将其添加到 .travis.yml 文件中。注意,此命令必须在存储库的根目录中运行

travis encrypt --add deploy.token <token>

设置 GitHub 令牌 #

拉取请求 #

请注意,拉取请求构建完全跳过部署步骤。

另请参阅 #