Redmine と Gitorious をサーバにインストールした
オープンソースでRuby on Railsのツールの、Redmine と Gitorious を自宅のサーバにインストールしました。
Redmine : プロジェクト管理(チケット、バグトラッキング、技術文書の管理)に使う予定です。
Gitorious : ソースコードやドキュメントなどのバージョン管理に使用。git のログなどをウェブから見るなどを考えています。
これだけそろえば、ソースコードの管理、ドキュメントの管理などなど、個人(一人)開発の管理が楽になりそうです(もちろんチームではもっと楽かも)。追加で次のシステムがそろえば、私個人の開発用には十分すぎる環境ですね。
- ビルドシステム(Continuous Integration のツールを予定)
- 自動バックアップシステム
現状は仮想環境(XenのDomU, CentOS 5.2 x86_64)の1サーバへRedmineとGitoriousをインストールしました。今後そろえる予定のビルドサーバとバックアップは物理的に別のサーバに格納したいところです。環境再構築も面倒で手間がかかるので、おそらく差分バックアップ + ディスクイメージごとのバックアップをすることになりそうです。
参考
Gitorious のインストールは次のエントリを参考にしました。Redmineよりも色々と手間取ることが多かったです。
Slicehost CentOS5.2 に Gitorious をインストールした - 写経日記
gem install ... でいくつかハマりました。gemのパッケージが新しすぎて実行できないケースがあったため、hoe(1.8.2), ruby-openid(2.1.2), echoe(3.0.2)などは括弧内のバージョンを指定してインストールしています。
ちなみに、MySQLをソースからコンパイルしていると gem install mysql だけではこけるので、以下のようにmysql_configとincludeパスを指定して実行する必要があります。また、これだけだとライブラリ(.lib)へのパスも通ってないので、/etc/ld.so.conf にmysqlのlibのパスを追加しておきました。
sudo gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config \ --with-mysql-include=/usr/local/mysql/include
Railsを使ったウェブアプリケーションの導入に慣れていないこともあり、MySQLにGitorious用のデータベースを作るのを忘れていて、手間取りました。
2009-02-22 追記:
Gitoriousがうまく動いていません。git push origin master しても次のエラーが出てリモートリポジトリにpushできませんでした。Gitorious のMLにも同様エラーがおこっているようですが・・。*1
fatal error fatal: The remote end hung up unexpectedly
Apache のログを見たら
127.0.0.1 - - [22/Feb/2009:14:45:50 +0900] "GET /projects/hex/repos/repository/writable_by?username=suma HTTP/1.1" 404 1146
てのがありました。バグなのだろうか。。MLで質問したほうがいいかもしれません。
2009-02-28追記:
なんとも間抜けなことに、プロジェクトの作成をウェブ経由で行った後に、git push origin masterするべきだったようです。Create a new projectというリンクからプロジェクトを作成していなかったのがpushできない原因でした。というわけで、これから快適なGitoriousライフが過ごせたらいいなと思います。