Skip to main content

使用 Jekyll 在本地测试 GitHub Pages 站点

您可以在本地构建 GitHub Pages 站点,以预览和测试对站点的更改。

谁可以使用此功能?

GitHub Pages 适用于具有 GitHub Free 和组织的 GitHub Free 的公共存储库,以及具有 GitHub Pro、GitHub Team、GitHub Enterprise Cloud 和 GitHub Enterprise Server 的公共和专用存储库。

Platform navigation

任何拥有仓库读取权限的人都可以在本地测试 GitHub Pages 站点。

先决条件

在使用 Jekyll 测试站点之前,您必须:

建议使用 Bundler 安装和运行 Jekyll。 Bundler 可管理 Ruby gem 依赖项,减少 Jekyll 构建错误和阻止环境相关的漏洞。 要安装 Bundler:

  1. 安装 Ruby。 有关详细信息,请参阅 Ruby 文档中的安装 Ruby
  2. 安装 Bundler。 有关详细信息,请参阅 Bundler

本地构建网站

  1. 打开终端

  2. 导航到站点的发布来源。 有关详细信息,请参阅“配置 GitHub Pages 站点的发布源”。

  3. 运行 bundle install

  4. 在本地运行您的 Jekyll 站点。

    $ bundle exec jekyll serve
    > Configuration file: /Users/octocat/my-site/_config.yml
    >            Source: /Users/octocat/my-site
    >       Destination: /Users/octocat/my-site/_site
    > Incremental build: disabled. Enable with --incremental
    >      Generating...
    >                    done in 0.309 seconds.
    > Auto-regeneration: enabled for '/Users/octocat/my-site'
    > Configuration file: /Users/octocat/my-site/_config.yml
    >    Server address: http://127.0.0.1:4000/
    >  Server running... press ctrl-c to stop.
    

    Note

    • 如果已安装 Ruby 3.0 或更高版本(如果通过 Homebrew 安装了默认版本,则表示可能已经安装),则可能会在此步骤中遇到错误。 这是因为这些版本的 Ruby 不再附带安装 webrick

      要修复错误,请尝试运行 bundle add webrick,然后重新运行 bundle exec jekyll serve

    • 如果 _config.yml 文件的 baseurl 字段包含 GitHub 存储库的链接,则可以在本地生成时使用以下命令来忽略该值并在 localhost:4000/ 为站点提供服务:

      bundle exec jekyll serve --baseurl=""
      
  5. 若要预览网站,请在 Web 浏览器中导航到 http://localhost:4000

更新 GitHub Pages gem

Jekyll 是一个活跃的开源项目,经常更新。 如果计算机上的 github-pages gem 与 GitHub Pages 服务器上的 github-pages gem 已过期,则站点外观在本地构建时可能与在 GitHub 上发布时不同。 为避免这种情况,请定期更新计算机上的 github-pages gem。

  1. 打开终端
  2. 更新 github-pages gem。
    • 如果已安装 Bundler,请运行 bundle update github-pages
    • 如果尚未安装 Bundler,请运行 gem update github-pages

延伸阅读