rcmdnk's blog

The Octopus (English Edition)

久々にOctopressの本家のレポジトリのアップデートを追ってアップデート。

Sponsored Links

Octopressのアップデート

Octopressをアップデート 以来のアップデート。

色々変更を入れてるのでついでに。

前回無駄にrebaseしようとして大変になって 結局本家を取ってきてそこに今の自分のアップデートを追加、 みたいなことをしましたが、今回はもうちょっと簡単に。

GitHub pages + Octopressの導入 に書いたように

$ git branch -a
* source
  remotes/bitbucket/source
  ...
  remotes/octopress/HEAD -> octopress/master
  remotes/octopress/master
  ...

な感じで普段使ってる所はbitbucket/sourceになっています。

本家Octopressはoctopress以下にあるので、 取り敢えずここのアップデートを取ってきます。

$ git fetch octopress

次にclassicテーマの中の変更を知りたいので

$ git diff source:.themes/classic/ octopress/master:.themes/classic > classic.diff

として差を取っておきます。

出来たらoctopress/masterbitbucket/sourceにmerge。 現在bitbucket/sourceに居るとして

$ git merge octopress/master

でOK。 何も出なければ次へ行きますが、ここでRakefileやGemfileにはCONFLICTが出ることが多いです。

$ git merge octopress/master
Removing plugins/rubypants.rb
Auto-merging plugins/octopress_filters.rb
CONFLICT (content): Merge conflict in plugins/octopress_filters.rb
Auto-merging plugins/category_generator.rb
CONFLICT (content): Merge conflict in plugins/category_generator.rb
Auto-merging Rakefile
CONFLICT (content): Merge conflict in Rakefile
CONFLICT (modify/delete): Gemfile.lock deleted in octopress/master and modified in HEAD. Version HEAD of Gemfile.lock left in tree.
Auto-merging Gemfile
Automatic merge failed; fix conflicts and then commit the result.

出たのでmergetoolを使って CONFLICTを修正。

$ git mergetool

後は先ほど取ったclassic.diffの中を見て、 もし自分のsourceにあるファイルの中に必要そうな変更があれば それを追加。

更にその変更を必要であれば octogray の方へ反映。

今回はちらちらOctopressのPull Requestを見たりしながら 入っていった変更とかを手動で入れたりしてたので 特にclassicテーマから入れる必要な物はありませんでした。

もしclassicのテーマを完全に無視して良いなら fetchmergeをせずに いきなり

$ git pull octopress master

でもOKです。

Sponsored Links
Sponsored Links

« Incapeでドット絵的なアイコンを作る OctopressのデフォルトJavaScriptについて »