The Jekyll gem makes a
jekyll executable available to you in your Terminal
window. You can use this command in a number of ways:
$ jekyll build # => The current folder will be generated into ./_site $ jekyll build --destination <destination> # => The current folder will be generated into <destination> $ jekyll build --source <source> --destination <destination> # => The <source> folder will be generated into <destination> $ jekyll build --watch # => The current folder will be generated into ./_site, # watched for changes, and regenerated automatically.
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
<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.
$ 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](http://unixhelp.ed.ac.uk/shell/jobz5.html).
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.
$ jekyll serve --no-watch # => Same as `jekyll serve` but will not watch for changes.
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
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
source: _source destination: _deploy
Then the following two commands will be equivalent:
$ jekyll build $ jekyll build --source _source --destination _deploy
For more about the possible configuration options, see the configuration page.