Update (July 19, 2015): I have since moved over to WordPress for the rich set of features and flexibility in theming that it offers. There are many benefits to the flat file CMS solutions though so I may try one again in the future. Note that a new version of Octopress is now available with lots of new features and theming options.
I’m finally trying out this whole Octopress/Jekyll blog concept, where you have a database-less blog and it’s all hosted on Github. I’ve wanted to set up a blog for my personal site for awhile but didn’t feel like going with WordPress this time around. Why have a database and all the heaviness of a CMS when you don’t have to?
We’ll see how this goes… Change is good, right?
Here’s what I used to set up the blog:
- Initial setup: Octopress docs
- Set up a new github repo to host this blog via github pages, using the steps at Octopress
- Set up a CNAME in my octopress source dir so that I could use my own domain for the blog, using the github docs . I also had to set up the CNAME with my web hosting company.
- Customize the look and feel of the site. The octopress customization docs helped, as did this blog. Note that you can also just install a whole separate blog theme, choosing from a variety of themes contributed. See the list at the octopress github repo.
- Deploy a first blog post: Octopress has good instructions on deployment via github pages.
The only problem I encountered was during my initial deployment attempt. When I ran
rake deploy, I kept seeing “ERROR: Repository not found” in the command output, so it wasn’t working. It turns out that my generated git config file had the wrong URL for remote origin. When I edited the
_deploy/.git_config file to contain the following, it worked:
[remote "origin"] url = [email protected]:sheelah/sheelah.github.com
Alternatively, I could have re-run the initial setup script (
rake setup_github_pages) and made sure to give it the correct github repo URL in the format from above.
The setup was not too difficult, and I love being able to create a blog entry via just a github push and a few rake commands.