Testing your GitHub Pages site locally with Jekyll
You can build your GitHub Pages site locally to preview and test changes to your site.
GitHub Pages is available in public repositories with GitHub Free, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server.
In this article
Anyone with read permissions for a repository can test a GitHub Pages site locally.
Prerequisites
Before you can use Jekyll to test a site, you must:
- Install Jekyll.
- Create a Jekyll site. For more information, see "Creating a GitHub Pages site with Jekyll."
We recommend using Bundler to install and run Jekyll. Bundler manages Ruby gem dependencies, reduces Jekyll build errors, and prevents environment-related bugs. To install Bundler:
- Install Ruby. For more information, see "Installing Ruby" in the Ruby documentation.
- Install Bundler. For more information, see "Bundler."
Tip: If you see a Ruby error when you try to install Jekyll using Bundler, you may need to use a package manager, such as RVM or Homebrew, to manage your Ruby installation. For more information, see "Troubleshooting" in the Jekyll documentation.
Building your site locally
-
Open TerminalTerminalGit Bash.
-
Navigate to the publishing source for your site. For more information about publishing sources, see "About GitHub Pages."
-
Run your Jekyll site locally.
$ 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.
-
To preview your site, in your web browser, navigate to
http://localhost:4000
.
Updating the GitHub Pages gem
Jekyll is an active open source project that is updated frequently. If the github-pages
gem on your computer is out of date with the github-pages
gem on the GitHub Pages server, your site may look different when built locally than when published on GitHub Enterprise. To avoid this, regularly update the github-pages
gem on your computer.
-
Open TerminalTerminalGit Bash.
-
Update the
github-pages
gem.- If you installed Bundler, run
bundle update github-pages
. - If you don't have Bundler installed, run
gem update github-pages
.
- If you installed Bundler, run
Further reading
- GitHub Pages in the Jekyll documentation