updated docs for deploying with rsync

This commit is contained in:
Brandon Mathis 2011-12-11 00:32:57 -06:00
parent 19c18ad300
commit a5732b9a76
3 changed files with 43 additions and 12 deletions

View File

@ -33,6 +33,7 @@ In the `_config.yml` there are three sections for configuring your Octopress Blo
subtitle: # A description used in the header subtitle: # A description used in the header
author: # Your name, for RSS, Copyright, Metadata author: # Your name, for RSS, Copyright, Metadata
simple_search: # Search engine for simple site search simple_search: # Search engine for simple site search
description: # A default meta description for your site
subscribe_rss: # Url for your blog's feed, defauts to /atom.xml subscribe_rss: # Url for your blog's feed, defauts to /atom.xml
subscribe_email: # Url to subscribe by email (service required) subscribe_email: # Url to subscribe by email (service required)
email: # Email address for the RSS feed if you want it. email: # Email address for the RSS feed if you want it.
@ -67,7 +68,7 @@ These configurations are used by Jekyll and Plugins. If you're not familiar with
If you want to change the way permalinks are written for your blog posts, see [Jekyll's permalink docs](https://github.com/mojombo/jekyll/wiki/Permalinks). If you want to change the way permalinks are written for your blog posts, see [Jekyll's permalink docs](https://github.com/mojombo/jekyll/wiki/Permalinks).
**Note:** Jekyll has a `baseurl` config which offers mock subdirectory publishing support by adding a redirect to Jekyll's WEBrick server. **Please don't use this.** **Note:** Jekyll has a `baseurl` config which offers mock subdirectory publishing support by adding a redirect to Jekyll's WEBrick server. **Please don't use this.**
If you want to publish your site to a subdirectory, [(see Deploying Octopress to a Subdirectory)](/docs/deploying/#deploy_subdir). If you want to publish your site to a subdirectory, [(see Deploying Octopress to a Subdirectory)](/docs/deploying/subdir/).
<h3 id="third_party">3rd Party Settings</h3> <h3 id="third_party">3rd Party Settings</h3>
These third party integrations are already set up for you. Simply fill in the configurations and they'll be added to your site. These third party integrations are already set up for you. Simply fill in the configurations and they'll be added to your site.

View File

@ -1,30 +1,54 @@
--- ---
layout: page layout: page
title: "Deploying with Rsync" title: "Deploying with rsync"
date: 2011-09-10 17:53 date: 2011-09-10 17:53
sidebar: false sidebar: false
footer: false footer: false
--- ---
<h2 id="rsync">Deploying with Rsync via SSH</h2> <h2 id="rsync">Deploying with rsync via SSH</h2>
Add your server configurations to the `Rakefile` under Rsync deploy config. To deploy with Rsync, be sure your public key is listed in your server's `~/.ssh/authorized_keys` file. Add your server configurations to the `Rakefile` under Rsync deploy config. To deploy with rsync, be sure your public key is listed in your server's `~/.ssh/authorized_keys` file.
``` ruby ``` ruby
ssh_user = "user@domain.com" ssh_user = "user@domain.com"
document_root = "~/website.com/" document_root = "~/website.com/"
deploy_default = "rsync" rsync_delete = true
deploy_default = "rsync"
``` ```
Now if you run Now if you run
``` sh ``` sh
rake generate # If you haven't generated your blog yet rake generate # If you haven't generated your blog yet
rake deploy # Syncs your blog via ssh rake deploy # Syncs your blog via ssh
``` ```
in your terminal, your `public` directory will be synced to your server's document root. in your terminal, your `public` directory will be synced to your server's document root.
### Regarding rsync delete
If you choose to delete on sync, rsync will create a 1:1 match. Files will be added, updated *and deleted* from your deploy directory to mirror your local copy.
If you do not choose to delete:
- You can store files beneath your site's deploy directory which aren't found in your local version.
- Files you have removed from your local site must be removed manually from the server.
<h3 id="exclude">Excluding files from sync</h3>
If you would like to keep your Octopress files synced but also want the convenience of keeping some files or directories on the server without having to mirror them locally, you can exclude them from rsync.
When syncing, rsync can exclude files or directories locally or on the server. Simply add an `rsync-exclude` file to the root directory of your project like this:
```sh
some-file.txt
some-directory/
*.mp4
```
Note: using excludes will prevent rsync from uploading local files, or if the delete option is specified, it will prevent rsync from deleting excluded items on the server.
## Version control ## Version control
You'll want to keep your blog source in a remote git repository, You'll want to keep your blog source in a remote git repository,
@ -38,8 +62,8 @@ git remote add origin (your repository url)
git config branch.master.remote origin git config branch.master.remote origin
``` ```
{% render_partial docs/deploying/_self_hosted_git.markdown %} {% render_partial docs/deploying/_self_hosted_git.markdown %}
{% render_partial docs/deploying/_subdir.markdown %} ## Deploying to a subdirectory
If for you wanted to host an Octopress blog at `http://yoursite.com/blog/` you would need to configure Octopress for [deploying to a subdirectory](/docs/deploying/subdir).

View File

@ -1,4 +1,10 @@
<h2 id="deploy_subdir">Deploying to a Subdirectory</h2> ---
layout: page
title: "Deploying to a Subdirectory"
date: 2011-09-10 17:53
sidebar: false
footer: false
---
If you're deploying to a subdirectory on your site, or if you're using Github's project pages, make sure you set up your urls correctly in your configs. If you're deploying to a subdirectory on your site, or if you're using Github's project pages, make sure you set up your urls correctly in your configs.
You can do this *almost* automatically: You can do this *almost* automatically: