投稿者 okkez
2009-02-15 04:02:00 GMT
github にある git リポジトリと自分で建ててる Redmine とを連携させてみる。
最初の一歩は公式の Redmine - RedmineRepositories - Redmine に載ってるので簡単。
$ cd /path/to/redmine
$ sudo mkdir git_repositories
$ sudo chmod ... # 権限を調整する
$ cd git_repositories
$ git clone --bare git://github.com/<your_name>/<your_repo_name>.git
$ cd <your_repo_name>
## ここからがポイント。
$ git --bare remote add origin git://github.com/<your_name>/<your_repo_name>.git
$ git --bare fetch
ポイントは git clone –bare が git clone と違って自動的に remote を登録してくれないこと。
これを手動で登録すれば OK。
もちろん config ファイルを自分で編集しても大丈夫。
あとは cron なり、何なりで fetch すればいいはず。
Redmine のリポジトリには今、作成した bare リポジトリのフルパスを指定すれば OK 。
追記 (2008-02-22)
以前、書いた部分がちょっと不十分だったようなので追記。
以下のようにしないと、ちゃんと反映されないみたい。
$ git --bare fetch git_repo_path master:master
カテゴリ Programming, Ruby | タグ git, Redmine | コメントなし | トラックバックなし
投稿者 okkez
2008-04-23 11:49:00 GMT
環境は以下のとおり
- CentOS5.1
- Subversion 1.4.2
- Apache2.2.4
- Ruby1.8.5
- RubyGems 1.1.1
うろ覚えだけどこんな感じ。
リポジトリブラウザが見えない
これは簡単。
$ sudo /etc/init.d/httpd start
という風に実行すると環境変数$HOMEを引き継ぐという sudo の罠にハマっただけ。
CentOS の場合は$HOMEは基本的にそのユーザしかアクセスできないので $HOME/.subversion 以下に
ある情報にアクセスしようとしてエラーになっていた。
$ sudo -H /etc/init.d/httpd start
でOK
リポジトリブラウザでファイル名やディレクトリ名が日本語である場合の不具合
ファイル名やディレクトリ名に日本語が使用されている場合に、正確に内容が表示されないことがあった。
原因は、環境変数 LANG がセットされていないことであった。
を /etc/sysconfig/httpd にセットすればOK
チケット一覧のエクスポートで文字化け
丸付き数字や機種依存文字を使用していると文字化けするので RAILS_ROOT/lang/ja.yml を以下のように修正する。
Index: lang/ja.yml
===================================================================
--- lang/ja.yml (リビジョン 1322)
+++ lang/ja.yml (作業コピー)
@@ -49,8 +49,8 @@
general_text_yes: 'はい'
general_lang_name: 'Japanese (日本語)'
general_csv_separator: ','
-general_csv_encoding: SJIS
-general_pdf_encoding: UTF-8
+general_csv_encoding: CP932
+general_pdf_encoding: CP932
general_day_names: 月曜日,火曜日,水曜日,木曜日,金曜日,土曜日,日曜日
general_first_day_of_week: '7'
Windows クライアントが多い場合はこれでほぼ文字化けが無くなる。UTF-8環境で使う人ばかりなのであれば
両方共 UTF-8 にしてもいいかもしれない。多分、PDFのエクスポートがダメっぽいけど。
ついでなので、書いておくと上記修正で文字化けは無くなるけど、セルの最後の一文字が消滅する場合がある。
これは、 Redmine が悪いのではなくておそらく rfpdf がおかしいのだと思う。
# znz さんのパッチをあてても直らなかった。
これについては、現在調査中。
Trac からの移行が失敗する
Ruby1.8系の String#[] は文字単位ではなくてバイト単位なので RDBMS の文字の数え方とずれる。
ActiveSupport がなんとかしてくれそうな気がしたけど自分で適当に修正した。
class String
alias [] original_indexer
def [](start_pos, end_pos)
self.split(//)[start_pos, end_pos].join
end
end
こんな感じで。String#[] は色々な呼び出し方ができるのでこんなパッチはイケてないのでよいこは真似してはいけませんよ。
本来なら以下のようなメソッドを定義してタスク中で String#[] を呼んでいる部分を修正するのが良いはず。
class String
def mb_substr(start_pos, end_pos)
self.aplit(//)[start_pos, end_pos].join
end
end
一応、本家にはチケットあげたのでそのうち直るはず。
カテゴリ Ruby | タグ Redmine | コメントなし | トラックバックなし