2009年7月5日日曜日

fixutf8を有効にすると --repositoryが使えなくなる原因

mercurialは起動時にコマンドライン引数の内--config、--cwd、--repositoryオプションの処理をしてコマンドラインから削除してからプラグインのロードを始める。
fixutf8はロードされた際にコマンドラインをUnicodeで取得してutf-8に変換している。
この時に行われるコマンドラインを削除する処理が適当で、--config、--cwd、--repositoryオプションを削除しないといけないのに、削除されたコマンドライン数分前のコマンドラインを削除している。
このためhg -R /home/witten/hg commitのコマンドラインはcommitが残るがhg commit -R /home/witten/hgのようなコマンドラインは/home/witten/hgが残ってしまいそんなコマンドはないとエラーが表示される。
tortoisehgが作成するコマンドラインはhg commit --verbose --repository /home/witten/hg -m logのためエラーが発生する。

0 件のコメント:

コメントを投稿