Category Archives: 未分類

2010-04-14

Git初体験4 Meadow3上のMagitからpullできない

Magitからssh経由でpullができない。Cygwinのbashからやるとこんな感じ。

$ git pull
bash.exe: warning: could not find /tmp, please create!
Enter passphrase for key '/c/home/k-aki/.ssh/id_dsa':
Already up-to-date.

bashが/tmpが無いなどと寝ぼけたことを言ってから、パスフレーズを求めてきている。パスフレーズを求められるとMeadow上からは入力できないのでまずい(fakecygpty.exeを使えばできるのかもしれないけど)。

いろいろ調べてみたら、どうやら環境変数TMPとTEMPが設定されていないから、このwarningが出るようだ。つい先日Cygwin1.7にしたとき.bashrcはほとんどデフォルトのままいじらなかったのだけど、中を確認したらunset TMPなどとしているではないか。Windowsのテンポラリディレクトリと混ざると良くないらしい。.bashrcのunsetの後にset TMP=/tmpとset TEMP=/tmpを追加。

これでもMagitからpullできない。プロセス一覧を見るとssh.exeが起動しっぱなしで終了しないので、やはりパスフレーズが取れないで止まっているのだろう。複数のsh.exeも一緒に起動しっぱなしになっているので、msysgitのsh.exeを使えなくしてみた。すると今度はsed.exeがエラー。msysgitのsedはcygwinのパスを理解しないのでファイルが開けないらしい。msysgitのsedも無効化してCygwinのsedを使うようにしてみる。今度はgitが「git: 'Merge branch 'master' of ssh://********* is not a git command'」などという訳のわからないエラーを。う゛ー、なんだこりゃ。

たぶんCygwinのsedを使おうとしたせいで何かテキストの切り出しに失敗したのだろう。仕方ないのでshとsedはmsysgitのものを使うことにする。

となると、やはりパスフレーズが取れなくてssh.exeが止まったままになってしまう。

Cygwinのbash上からはちゃんと何も聞かれずにgit pullできるので、何が違うのだろうと環境変数一覧を比較してみた。

あ、TMPとTEMPの値が違う。Meadow3はスタートメニューから起動しているので%USERPROFILE%Tempだし、bashの方はさっき明示したとおり/tmp(私の場合c:appcygwintmp)だ。そういえばwin-ssh-askpassは/tmpの下にファイルを作ってたっけ。

というわけで、.emacsに(setenv "TMP" "c:/app/cygwin/tmp")(setenv "TEMP" "c:/app/cygwin/tmp")を追加したら、まともにpullできるようになった。いいのかこれで。

2010-04-14

Git初体験5 コミットログの文字コード

Magitを使っている限りコミットログは普通に日本語が化けずに使えたので見過ごしそうになるけど、どうもサーバー上ではShift_JISで記録されているっぽい。これってUTF-8じゃなくても良いのだろうか。

仮にコミットログをUTF-8にしたとすると、ファイル内はShift_JIS(またはCP932)だから、Magitのバッファ内で差分表示をした時に文字化けしたりしないだろうか。

2010-04-13

Windows7のAeroプレビュー

Windows7ではAlt+Tabでアクティブなウィンドウを切り替えるときに、Altを押しっぱなしにしていると、ウィンドウが枠線だけ表示されるようになった(アクティブなウィンドウ以外)。

この機能はどうやらAeroプレビューという機能らしいのだが、いったい何がいいのかさっぱりわからない。Tabを押してアクティブウィンドウが切り替わるたび、今まで枠線だけだったウィンドウが唐突に姿を現す。目がチカチカして大変見苦しい。そんなものより、タイトルバーのアクティブ色をもっと非アクティブと区別できるようにした方が良いと、いつになったらわかるのだろうか(Vistaよりはましになったが。マルチディスプレイで最大化するとタイトルバーの色が変わらなくなる問題も直っていた)。

Alt+Tabで出てくるタスク一覧もVistaから改悪されたままだ。元々サイズが異なるウィンドウを無理に同一サイズに縮小したサムネイルよりも、元々同一サイズでデザインされているアイコンだけを並べた方が見やすいに決まっている。百歩譲ってそれはいいとしても、カーソルの色が見づらすぎる。

調べているうちにAlt+Tab Tunerというものを見つけた。試してみるべきだろうか。

Aeroプレビューというのは何をプレビューするものなのかさっぱりわからなかったのだが、どうやらウィンドウに隠れたデスクトップやガジェットをプレビューするためのものらしい。なるほど、私はデスクトップのアイコンを普段使わないし、ガジェットも使わないので意義がわからないのだな。しかしAlt+Tabでデスクトップが見えて何がいいのだろうか。Alt+Tabでデスクトップのアイコンにフォーカスがいくのであればまだ理解できるのだが……。

追記:パフォーマンス オプションで「Aeroプレビューを有効にする」を解除すればいいようだ。タスクバーのプロパティからではAlt+Tab時のプレビューまでは解除できないようだ。