jekyll/site/_docs/usage.md

2.9 KiB

layout title prev_section next_section permalink
docs Basic Usage installation structure /docs/usage/

The Jekyll gem makes a jekyll executable available to you in your Terminal window. You can use this command in a number of ways:

{% highlight bash %} $ jekyll build

=> The current folder will be generated into ./_site

$ jekyll build --destination

=> The current folder will be generated into

$ jekyll build --source --destination

=> The folder will be generated into

$ jekyll build --watch

=> The current folder will be generated into ./_site,

watched for changes, and regenerated automatically.

{% endhighlight %}

Destination folders are cleaned on site builds

The contents of <destination> are automatically cleaned when the site is built. Files or folders that are not created by your site will be removed. Do not use an important location for <destination>; instead, use it as a staging area and copy files from there to your web server.

Jekyll also comes with a built-in development server that will allow you to preview what the generated site will look like in your browser locally.

{% highlight bash %} $ jekyll serve

=> A development server will run at http://localhost:4000/

Auto-regeneration: enabled. Use --no-watch to disable.

$ jekyll serve --detach

=> Same as jekyll serve but will detach from the current terminal.

If you need to kill the server, you can kill -9 1234 where "1234" is the PID.

If you cannot find the PID, then do, ps aux | grep jekyll and kill the instance. Read more.

{% endhighlight %}

Be aware of default behavior

As of version 2.4, the serve command will watch for changes automatically. To disable this, you can use jekyll serve --no-watch, which preserves the old behavior.

{% highlight bash %} $ jekyll serve --no-watch

=> Same as jekyll serve but will not watch for changes.

{% endhighlight %}

These are just a few of the available configuration options. Many configuration options can either be specified as flags on the command line, or alternatively (and more commonly) they can be specified in a _config.yml file at the root of the source directory. Jekyll will automatically use the options from this file when run. For example, if you place the following lines in your _config.yml file:

{% highlight yaml %} source: _source destination: _deploy {% endhighlight %}

Then the following two commands will be equivalent:

{% highlight bash %} $ jekyll build $ jekyll build --source _source --destination _deploy {% endhighlight %}

For more about the possible configuration options, see the configuration page.