One of the criticisms of Octopress is how there's no clear separation of
the static generation engine and the content of one's website, and thus
upgrading Octopress is difficult. I delayed upgrading due to this.
However, my concerns were unfounded, as it was very painless to upgrade
git pull octopress master # Get the latest Octopress
bundle install# Keep gems updated
rake update_source # update the template's source
rake update_style # update the template's style
The first step resulted in a few merge conflicts. I find RubyMine's git
conflict resolution tools helpful, so I used those. Here's a short
screencast (embedded below) showing you
how these tools helped with this process. Besides some minor issues
dealing with a few merge conflicts, there was nothing very interesting
or eventful about the upgrade, which means that the current process is
really quite OK.
I hope a few people find this demo of the RubyMine git conflict
resolution tool helpful. The key takeaways from this video are:
Merge conflicts show up as red in the list of changes.
Try the diff'ing buttons in the upper left to get 2 way views of the
3 way merge.
3, "Yours" means your local changes, and "Theirs" means the server's
changes, or, in this case, the changes in the main Octopress development
Did the upgrade work? You're looking at the results of it.
It's worth noting that I had one slight snag. When I merged
sass/screen.scss, I accidentally removed this line, which is used for
the youtube plugin.
I could have figured this out by examining the history of the file and
noting that I had added this line, rather than it being part of
Octopress. So yes, it would be bit better if there was a cleaner
separation between the Octopress code and any enhancements. However, the
current mechanism works, and it's still thousands of times better than
CEO at ShakaCode
Share this article
Are you looking for a software development partner who can
develop modern, high-performance web apps and sites?