All Projects → yegor256 → Jekyll Github Deploy

yegor256 / Jekyll Github Deploy

Licence: mit
Jekyll Site Automated Deployer to GitHub Pages

Programming Languages

ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to Jekyll Github Deploy

Millennial
A minimalist Jekyll theme for running an online publication
Stars: ✭ 223 (+232.84%)
Mutual labels:  jekyll, github-pages, jekyll-blog
Chalk
Chalk is a high quality, completely customizable, performant and 100% free Jekyll blog theme.
Stars: ✭ 987 (+1373.13%)
Mutual labels:  jekyll, github-pages, jekyll-blog
Lagrange
A minimalist Jekyll theme for running a personal blog
Stars: ✭ 454 (+577.61%)
Mutual labels:  jekyll, github-pages, jekyll-blog
Fastpages
An easy to use blogging platform, with enhanced support for Jupyter Notebooks.
Stars: ✭ 2,888 (+4210.45%)
Mutual labels:  jekyll, github-pages, jekyll-blog
Liberxue.github.io
Liberxue blog for lightweight Jekyll themes 轻量级自适应 简洁 卡片式博客主题 3秒搞定GitHub blog
Stars: ✭ 330 (+392.54%)
Mutual labels:  jekyll, github-pages, jekyll-blog
Reverie
🎨 A ridiculously elegant Jekyll theme.
Stars: ✭ 442 (+559.7%)
Mutual labels:  jekyll, github-pages, jekyll-blog
Flexible Jekyll
Flexible-Jekyll is a simple and clean theme for Jekyll
Stars: ✭ 531 (+692.54%)
Mutual labels:  jekyll, github-pages, jekyll-blog
Simple Jekyll Search
A JavaScript library to add search functionality to any Jekyll blog.
Stars: ✭ 1,133 (+1591.04%)
Mutual labels:  jekyll, jekyll-blog
Jekyll Theme Chirpy
A minimal, sidebar, responsive web design Jekyll theme that focuses on text presentation.
Stars: ✭ 773 (+1053.73%)
Mutual labels:  jekyll, github-pages
Aviaryan.github.com Retired 2018
My website (retired)
Stars: ✭ 10 (-85.07%)
Mutual labels:  jekyll, github-pages
Bay
🐟 A simple theme for Jekyll. Live at https://eliottvincent.github.io/bay/
Stars: ✭ 37 (-44.78%)
Mutual labels:  jekyll, jekyll-blog
Minimal
Minimal is a Jekyll theme for GitHub Pages
Stars: ✭ 753 (+1023.88%)
Mutual labels:  jekyll, github-pages
Cayman
Cayman is a Jekyll theme for GitHub Pages
Stars: ✭ 719 (+973.13%)
Mutual labels:  jekyll, github-pages
Mediumish Theme Jekyll
Jekyll Template - Mediumish
Stars: ✭ 786 (+1073.13%)
Mutual labels:  jekyll, jekyll-blog
Type Theme
A free and open-source Jekyll theme with responsive design. Great for blogs and easy to customize.
Stars: ✭ 657 (+880.6%)
Mutual labels:  jekyll, github-pages
Jekyll Rss Feeds
Templates for rendering RSS feeds for your Jekyll blog
Stars: ✭ 627 (+835.82%)
Mutual labels:  jekyll, jekyll-blog
Lora
💎 Lora free Jekyll theme
Stars: ✭ 32 (-52.24%)
Mutual labels:  jekyll, jekyll-blog
Time Machine
Time machine is a Jekyll theme for GitHub Pages
Stars: ✭ 41 (-38.81%)
Mutual labels:  jekyll, github-pages
Minimal Mistakes
📐 Jekyll theme for building a personal site, blog, project documentation, or portfolio.
Stars: ✭ 8,967 (+13283.58%)
Mutual labels:  jekyll, github-pages
Jekyll Timeline
Timeline / Résumé Theme with Jekyll
Stars: ✭ 46 (-31.34%)
Mutual labels:  jekyll, github-pages

Managed by Zerocracy DevOps By Rultor.com We recommend RubyMine

Build Status Gem Version Hits-of-Code License

If you use some plugins with your Jekyll blog, chances are you can not have your blog generated by GitHub Pages. First of all, because they do not allow custom plugins. This is where jekyll-github-deploy (a.k.a. jgd) comes in: it will automatically build your Jekyll blog and push it to your gh-pages branch. You may want to read this blog post before you start using this tool: Deploy Jekyll to GitHub Pages.

It is assumed that your blog is in the home directory of your repo.

Install it first:

$ gem install jgd

Run it locally:

$ jgd

Now your site is deployed to gh-pages branch of your repo. Done.

Below is a list of all command line options.

Option Description
-u or --url The GitHub URL. Defaults to th URL of your current project.
-b or --branch The branch to push your site to. Defaults to gh-pages. If the branch does not exist, it will be created.
-r or --branch-from The source branch. Defaults to master.
-c or --config Name of the optional deploy config file. See Production variables below for more information.
-d or --drafts Adds the --drafts option to Jekyll so that it will build draft posts.
-h or --help Displays a list of all options.

If you need to have different values for your deployed blog, just add a _config-deploy.yml file in your project's root and you're set. Values re-defined in _config-deploy.yml will override those defined in _config.yml.

Typical usage includes changing site url, disable disqus or ga in development...., you name it.

While _config-deploy.yml is the default, you may specify any config file by using the --config command line option.

For example:

$ jgd -c _config-deploy-develop.yml -r develop -b gh-pages-develop

Deploying with Travis

This is how I configure my Jekyll blog to be deployed automatically by travis-ci:

branches:
  only:
    - master
env:
  global:
    - secure: ...
install:
  - bundle
script: jgd -u http://yegor256:[email protected]/yegor256/blog.git

The environment variable $PASSWORD is set through env/global/secure, as explained here.

Don't forget to add gem require 'jgd' to your Gemfile.

You can use SSH key instead. First, you should encrypt it:

$ travis encrypt-file id_rsa --add

Then, use the URI that starts with [email protected]:

script:
  - jgd -u [email protected]:yegor256/blog.git

Building locally

In order to build a package locally run below commands.

gem build jgd.gemspec
gem install jgd-<version>.gem

How to Contribute

First, install Ruby 2.3+, Rubygems, and Bundler. Then:

$ bundle update
$ bundle exec rake --quiet
$ ./tesh.sh

The build has to be clean. If it's not, submit an issue.

Then, make your changes, make sure the build is still clean, and submit a pull request.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].