GitHub Pages 部署

本页面记录使用 dpl v1 进行的部署,该版本目前是默认版本。下一个主要版本 dpl v2 将很快发布,我们建议您开始使用它。有关详细信息,请参阅 我们的博客文章dpl v2 文档可在此处找到

部署到 GitHub Pages 使用 git push --force 覆盖目标分支上的历史记录,因此请确保您只部署到专门用于此目的的分支,例如 gh-pages。通过将 keep_history 选项设置为 true可以禁用此“强制推送”行为。

在构建成功后,Travis CI 可以将您的静态文件部署到 GitHub Pages

您需要提供一个 个人访问令牌 并在 .travis.yml 中设置部署提供商详细信息。

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

deploy:
  provider: pages
  skip_cleanup: true
  github_token: $GITHUB_TOKEN  # Set in the settings page of your repository, as a secure variable
  keep_history: true
  on:
    branch: main

确保您已将 skip_cleanup 设置为 true,否则 Travis CI 将删除构建期间创建的所有文件,这可能会删除您尝试上传的内容。

设置 GitHub 令牌 #

您需要生成一个具有 public_reporepo 范围的 个人访问令牌(对于私有仓库,需要 repo)。由于令牌应该是私密的,您需要在您的 仓库设置 或通过 .travis.yml 中的加密变量 安全地将它传递给 Travis。

更多配置 #

  • local_dir:要推送到 GitHub Pages 的目录,默认为当前目录。可以指定为绝对路径或相对于当前目录的相对路径。
  • repo:仓库标识符,默认为当前仓库。注意:标识符由用户名和仓库名称组成,格式为 user/repo-name
  • target_branch:要(强制,参见:keep_history)推送 local_dir 内容到的分支,默认为 gh-pages
  • keep_history:可选,创建增量提交而不是强制推送,默认为 false
  • fqdn:可选,为您的网站设置自定义域,默认为没有自定义域支持。
  • project_name:默认为 fqdn 或仓库标识符的值,用于元数据。
  • email:可选,提交者信息,默认为 deploy@travis-ci.org
  • name:可选,提交者,默认为 Deployment Bot
  • committer_from_gh:可选,默认为 false。允许您使用令牌所有者的姓名和电子邮件进行提交。覆盖 emailname 选项。
  • allow_empty_commit:可选,默认为 false。仅当 keep_historytrue 时启用。
  • github_url:可选,自托管 GitHub 企业版的 URL,默认为 github.com
  • verbose:可选,详细显示内部步骤,默认为 false
  • deployment_file:可选,默认为 false,启用部署信息文件的创建。