Skip to content
jekyll plugin to push a compiled jekyll site to its own github branch
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Build Status Gem Version Gem Downloads Maintainability Test Coverage docs License

Jekyll gem plugin to push a compiled Jekyll site to a GitHub branch. Works locally or on Travis CI if you add an access token to your Travis build. Great for keeping archived copies or getting to use Jekyll Plugins and still host on GitHub pages.

push pop gif


Add jekyll_push to your Jekyll sites's Gemfile within the :jekyll_plugins group:

group :jekyll_plugins do
 gem 'jekyll_push'

And then execute:

$ bundle

Make sure you also add jekyll_push as a plugin to your _config.yml file:

 - jekyll_push


$ jekyll push <branch_name> or $ bundle exec jekyll push <branch_name>


For GitHub pages

If you run jekyll push gh-pages to use GitHub pages publishing, JekyllPush will look for a repo_name variable in your _config.yml file and try to construct a baseurl from it.

For example, if you have a repository named my_site just add:

repo_name: my_site

to your _config.yml file and JekyllPush will rebuild your site using /my_site as the baseurl before pushing it to the gh-pages branch. This lets you use JekyllPush for multiple branches and publish targets, with differing (base)url patterns.

When run locally

[ TO DO ]

When run via Travis-CI

[ TO DO ]


Bug reports and pull requests are welcome on GitHub at This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.


The gem is available as open source under the terms of the MIT License.

Code of Conduct

Everyone interacting in the JekyllPush project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.

You can’t perform that action at this time.