テキストファイルでTracのwikiを更新する。
Tracのwikiで長いドキュメントを書いていて辛くなってきたので、テキストファイルで更新するためのRakefileを書いた。wikiのソースをリポジトリにコミットできてうれしい。コミットフックでwiki更新時にチケットを更新できてうれしい。
インストール
* http://gist.github.com/458400
mechanizeとhighlineが必要。
$ sudo gem install mechanize $ sudo gem install highline
Basic認証が前提。ホームディレクトリに ~/.tracrake ファイルを置くと毎回パスワードを入力せずに済む。中身はYAML。
id: username pass: password
Rakefileと同じディレクトリにある全ての*.txtファイルがwikiのソースファイルになる。テキストの先頭の行に、
更新するwikiページのURL 空白 wikiページの現バージョン番号
を書く。バージョン番号は「ページ履歴」で確認出来る。2行目以降がwikiのソース。
http://your.trac.page/wiki/abc 12 [[PageOutline]] * title ** subtitle - aaa - bbb - ccc
タスク
使えるタスクは3つ。
$ rake -T rake trac:diff # diff trac wiki articles and *.txt files. rake trac:download # download trac source and overwrite all *.txt files. rake trac:update # upload trac wiki articles from *.txt files.