:::: MENU ::::

C.a.T!

CATch a TAIL!

Japanese sub culture and tech.

  • 2013/03/6
  • 0
misc

Gitで管理するCMS gollum

普段いろいろ新しく覚えたことを電子的にメモしてるんだけど、このメモの管理システムを最近見直しました。
今までは、Emacsのhowmを使って、データ自体はGitにコミットするという運用をしていました。
これはこれで不自由はあまりなかったのですが、最近エディタをEmacsからSublime textに移行してEmacsを使わなくなり、代替を探していました。

できるだけシンプルなものを使いたいと思っていて、基本的にシンプルなテキストファイルを管理するというhowmの方式はあまり変えたくない。
Redmineとか仰々しいシステムを運用したくない。
というポリシで探していた所 github が開発した gollum というのがかなりフィットするので最近使っています。
gollum は ruby で書かれたサーバです。
サーバと言ってもDBバックエンドの構築とか面倒なことは全くありません。
インストールは、
[code lang=”text”]
gem install gollum
[/code]

で終わり。

データはgitリポジトリで管理します。
markdown とか reStructuredText とか Pod とかで書かれたテキストファイルをgitリポジトリにコミットすると、gollum のWeb画面を通してHTMLとしてレンダリングされたものを見れます。
Web画面は、gitリポジトリのルートで gollum というコマンドを実行するだけ。
これで、 http://localhost:4567/ で gollum のWeb画面が使えます。
テキストは自分の好きなテキストエディタで書いてもいいし、gollum に搭載されているWebエディタを使ってもいい。
このエディタがよくできていて、エディタとプレビュを左右に並べながら編集できます。
自分はテキストエディタで編集していますが。
検索とかもできます。
あと、git管理なので履歴が全部残っていて、過去のメモを呼び出したりもできる。
自分は、bitbucketのプライベートリポジトリにメモをpushして、家とか会社のマシン間を同期しながら使っています。
すごいシンプル運用。

あと、プレゼンデータもこれで管理したいと思っています。
最近はプレゼンをHTMLのプレゼンフレームワークで作っていますが、このデータもメモに突っ込んでおいて gollum のサーバ経由でプレゼンすると。
最近使っている reveal.js だと、gitリポジトリの lib/revealjs とかに reveal.js のファイル一式を突っ込んでおき、プレゼン側からは /lib/revealjs/css/reveal.min.css とかで参照するよう書いておく。
で、slide/sample というパスでプレゼンのHTMLを書いてコミット。
URLに http://localhost:4567/data/slide/sample と /data を付けて作ったプレゼンデータにアクセスすると、HTMLをそのまま表示してくれますので、プレゼンスライドが普通に表示できるわけです。
ちょっと修正したくなったら gollum から修正するなり、テキストエディタで修正してコミットすればいい。
これは結構理想的なシステムになりそう。
できればプレゼンも markdown で書いて、そっからプレゼンを gollum のWeb画面でできればより理想なんですが、その方法はまだ編み出せてません。

非常に簡単でシンプルなシステムなので、結構オススメ。
数人のチーム開発でのドキュメンテーションとかならこういうのの方がいいんじゃないかな。

Leave a comment