Home

もさもさくん

Subversionのコミットログの変更とRedmineへの反映方法

Subversionのコミットログを変更する方法と、それをRedmineのリポジトリへ反映する方法のメモ

◆Subversionのコミットログを変更する方法

まずsvnリポジトリのhooksディレクトリ内の「pre-revprop-change」というスクリプトがexit 0を返す必要があります。なければ作ります。
スクリプトの中身はこれでよさげです。chmod +xで実行権限を付けましょう。

#!/bin/sh
exit 0

下記のコマンドでコミットログを変更することができます。

$ svn ps --revprop -r {リビジョン番号} svn:log "新しいコメント"

例) リビジョン100のコミットログを「ごにょごにょ」に変更。

$ svn ps --revprop -r 100 svn:log "ごにょごにょ"

<参考>
anysense-devel  Subversionでコミット時のコメントを後で変更する方法
間違ってしまったコミットログコメントを後で変更する – ymorimoの日記
Que le temps passe vite !!: Subversionのコミットフック -Linuxにて

◆Subversionのコミットログの変更をRedmineに反映する方法

上記でコミットログを変更してもそのままではRedmineに反映されないようです。
Redmineのリポジトリに反映させるには「script/console」で下記を実行します。
リポジトリIDは「Repository.find(:all)」で確認できます。リビジョンNoはsvnのリビジョンNoです。

repo_id = 5    # リポジトリID
rev = 100    # リビジョンNo
repository = Repository.find(repo_id)
revisions = repository.scm.revisions(nil, rev, rev)
changeset = repository.changesets.find_by_revision(rev)
changeset.update_attribute("comments", revisions.first.message)
changeset.scan_comment_for_issue_ids

Redmine v0.7.3と0.8.4で確認。
もっと良い方法がありそうな気がしますけどね・・。とりあえずはこれでよいかな。

<参考>
日で管理したい – Redmine Users (japanese) | Google Groups

Bloggerから引っ越ししてきた。

Blogger: もさもさくん

Bloggerでやってたブログをこちらに引越してきました。データもインポートした。

WordPressの画像縮小にImageMagickを使う方法

WordPressの画像縮小はデフォルトでGDというライブラリを用いているようですが、お世辞にも綺麗とは言えません。

画像縮小に定評のあるLanczosというアルゴリズムが使えたら綺麗になるんではなかろうかと考えました。

ImageMagickという画像操作ツールのconvertコマンドの画像リサイズではデフォルトでLanczosが使われるそうです。
個人的にconvertコマンドはブログアップロード前に縮小する際によく使います。

WordPressでImageMagickを使う方法を探してみたらパッチを公開しているサイトを発見。
Wordpress patches | land of bile
wp-include/media.phpにこのパッチを当ればOK! どうやらimage_resize()を書き換えているようです。
convertコマンドのパラメータいじくりたかったら付け加えましょう。

画像縮小後の画像が綺麗になっている気がする~。

ちなみにPHPよりImageMagickを使う方法の一つにPECL::Imagickというライブラリもあります。
当初それを使おうと頑張ってインストールまでしましたが、細かいパラメータが変更できなそうだったのでやめました。
おそらくPECL::Imagickを使った方がコードは綺麗になる気がしますが、インストールが面倒だったような気がします。

Apacheのアクセスログを日付別に分割する:mod_log_rotate

AWStats等のアクセスログ解析のためにApacheのアクセスログを日付別に分割したい場合がある。今まではパイプでcronologを使って分割パイプで使用していたが、なんだか怪しい気がしていた。

Apacheのモジュールで存在しないか探してみたところ発見した。
Mod-log-rotate – Hexten

mod_log_rotateをCentOS 5.2にインストールしたときのメモ

◆ダウンロード

$ wget http://hexten.net/assets/apache2/mod_log_rotate.c

◆インストール

# apxs -i -a -c mod_log_rotate.c

※apxsコマンドがない場合はhttpd-develをインストールする

# yum install httpd-devel

勝手に/etc/httpd/conf/httpd.confも書き換わるっぽい。

◆設定(/etc/httpd/conf/httpd.conf)
おそらくこれは上記インストール時に追加される。

LoadModule log_rotate_module /usr/lib64/httpd/modules/mod_log_rotate.so

下記を追加する。

RotateLogs OnRotateLogsLocalTime On

CustomLog部分の変更。日付別の形式とする。

#CustomLog logs/access_logcombined CustomLog "logs/access_log.%Y%m%d" combined

◆設定(/etc/httpd/conf.d/ssl.conf)
ssl_access_log部分の変更

#TransferLog logs/ssl_access_logCustomLog "logs/ssl_access_log.%Y%m%d" combined

ssl_request_log部分の変更

#CustomLog logs/ssl_request_log \# "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"CustomLog "logs/ssl_request_log.%Y%m%d" \  "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"

◆Apache設定再読み込み

# service httpd reload

これでOK。日付別のログが作成されていると思う。

問題点としては/var/log/httpd/の権限がデフォルトでroot:rootの700となっているが、これだと新規ファイルが書き込めずエラーとなってしまうらしい。ひとまずapacheが動作しているユーザ(デフォルトapahce)に変更した。

# chown apache:apache /var/log/httpd

もっと良い方法があれば、誰か教えてください。

<参考>
mod_log_rotate がよさげかも – (ひ)メモ
mod_log_rotate のススメ

Rubyを使ってTwitterに投稿する

RubyGemsにTwitterというライブラリを使うと簡単にできる。
Ruby Twitter Gem by John Nunemaker

まずインストールする。

# gem install twitter

サンプルコード twitter.rb

#!/usr/local/bin/ruby

require 'rubygems'require 'twitter'

message = $*.firsthttpauth = Twitter::HTTPAuth.new('userid', 'password')base = Twitter::Base.new(httpauth)base.update(message)

こんな感じでコマンドライン引数にメッセージを渡すと投稿できる。

$ ruby twitter.rb てすてすてす

CentOS 5.3がようやくリリース

されたみたい。yum updateが凄いことになっているなぁ。
http://www.centos.org/
http://wiki.centos.org/Manuals/ReleaseNotes/CentOS5.3/Japanese

ソーシャルブックマークツール scuttleを設置するメモ

試しにscuttle0.7.4をCentOS4.xにインストールしてみる。
http://sourceforge.net/projects/scuttle/

予めmysqlのscuttle用のデータベース及びユーザを作成しておくことにする。

$ mysql -u root -pmysql> create database scuttle_db default charset utf8mysql> grant all on scuttle_db.* to scuttle_user@localhost identified by 'scuttle_pwd';mysql> flush privileges;

ダウンロードして解凍して/var/www/html/に移動してリネーム。

$ wget "http://downloads.sourceforge.net/scuttle/scuttle.0.7.4.zip?modtime=1215888540&big_mirror=0"$ unzip scuttle.0.7.4.zip$ mv scuttle\ 0.7.4 /var/www/html/scuttle

config.inc.php.exampleをコピーしてconfig.inc.phpを作る。そんで編集。

$ cd /var/www/html/scuttle$ cp config.inc.php.example config.inc.php$ vi config.inc.php

MySQLのDBの設定とロケールを日本語にする。

$dbuser = 'scuttle_user';$dbpass = 'scuttle_pwd';$dbname = 'scuttle_db';...$locale = 'ja_JP';

table.sqlを実行してmysql上にテーブルを作成する。

$ mysql -u root -p scuttle < tables.sql

ここまで正常に出来ていればブラウザで/scuttle/にアクセスすればOK。
トップページの右上の辺りにある「登録する」からユーザ登録する。
管理者ユーザも一般ユーザも区別ないっぽいね。でもシンプルな感じが好印象です。

Railsで”rake db:migrate”すると”No such file or directory – /tmp/mysql.sock”というエラーが出る

mysql.sockが見つけられないというエラー。railsがmysql.sockのパスを認識できなかった場合にデフォルトの”/tmp/mysql.sock”を探しに行くために発生する模様。どうやらrailsインストール時にmysqlがインストールされていない場合に出るとのこと。

“config/database.yml”に”socket: /var/lib/mysql/mysql.sock”のようにmysql.sockの正しいパスを付け加えれば動作するのだが毎回していするのはめんどい。
あとは/tmpにシンボリックリンクを作るという手もあるらしい。。

# ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

実際行った対処はRubyGemsでrails関連を再インストール(uninstallしてinstall)した後にrailsコマンドでアプリを作り直したところ
“config/database.yml”に”socket: /var/lib/mysql/mysql.sock”と付くようになり”rake db:migrate”も成功するようになった。どうやらrailsが正しいパスを認識してくれたようですね。

ウィルスバスターでVMwareのブリッジネットワークが使えない件

会社の開発PCにはウィルスバスター2008が入っているのだけどパーソナルファイアウォールが有効になっていると、VMware Sereverのゲストからブリッジ接続で外部にアクセスが出来なくなってしまった。

パーソナルファイアウォールを無効にすれば使えるようになるのだけど。それもアレなんで色々試してみるも例外設定でプログラムやIPとか指定してやってみてもうまくいかない。。

調査してみたところ、例外ルール(プロトコル)のWebサービス (HTTP)とSecure Webサービス (HTTPS)を有効にしたら繋がるようになった。しかしこれだと多分HTTPとHTTPSだけなんだろうか? 試していないがひとまずはこれでOKなので必要なポートが出てきたら開けるかな。

<参考>
http://nekomata-nyaosuke.moe-nifty.com/detekoi/2007/01/2007vmware_baef.html

Firefox 3.0.1でTab Mix Plusが使えない件

Sleipnirから移行組の私としてはタブ関連拡張のTab Mix PlusがないとどうもFirefoxを使う気がしません。
この拡張はFirefox 3.0には正式に対応していないので下記の開発版の「tab_mix_plus-0.3.6.1.080416.xpi」を使っていました。
http://tmp.garyr.net/dev-builds/

しかし本日Firefox 3.0.1にアップデートしたところTab Mix Plusが使えなくなってしまいました。。orz

本来は正式に対応してもらいたいところだけど、仕方ないので下記で公開しているファイルを使わせていただき使えるようになりました。多謝!
http://mozilla-ext-ja.way-nifty.com/blog/2008/07/tab_mix_plus_de_e3b9.html

Home

Bookmarks
Flickr
www.flickr.com
Twitter
Search
Feeds
Meta

Return to page top