--- layout: page title: Deploying date: July 18 2011 sidebar: false footer: false --- Here are some nice and easy ways to deploy your Octopress blog. ## Github Pages Hosting your blog with Github's [Pages service](pages.github.com) is free and allows custom domains. To deploy you simply push your repository to Gihub. This is a great way to host a personal blog, or even a multi-author blog, where contributions can be handled with pull requests and commit access. [Deploying to Github Pages »](/docs/deploying/github) ## Heroku Like Github Pages, Heroku is also free, allows custom domains, and uses a git based deployment workflow. Heroku is a bit simpler to use and your blog repository remains private. [Deploying to Heroku »](/docs/deploying/heroku) ## Rsync If you have web hosting service you can probably deploy with [Rsync](http://en.wikipedia.org/wiki/Rsync) which is brilliantly fast, syncing new and changed files through SSH. If your host doesn't offer SSH access, and you're looking for one that does, check out [Dreamhost](http://www.dreamhost.com/r.cgi?109007) (I've been a happy customer since 2005). [Deploying with Rsync »](/docs/deploying/rsync) ## Host your own remote repository If you want to set up a private git repository on your own server, here's how you'd do it. You'll need SSH access to follow along. ```sh ssh user@host.com mkdir -p git/octopress.git cd git/octopress.git git init --bare pwd # print the working directory, you'll need it below. logout ``` The origin remote currently points to the Octopress project on Github but you'll want to point it to your remote repository. ```sh git remote rename origin octopress git remote add origin ssh://user@host.com/(output of pwd above) git config branch.master.remote origin ```