トップ «前の日記(2007-03-18) 最新 次の日記(2007-03-21)» 編集

2007-03-20 [長年日記]

_ エンコーディングが混ざっていても化けない diff

こんな感じ。

for i in `svn status | awk '$1 == "M" {print $NF}'`;
do svn diff $i | nkf ;
done | less

これは動作確認済み。

それかこんな感じ。

for i in `svn diff | awk '/^Index: / {print $2}'`;
do svn diff $i | nkf;
done | less

これはちゃんと確認してない。

というのも、上のものは最初から working copy に存在するファイル、ディレクトリしか処理対象にできないが、下の方法だと diff に -r を与えることで任意のタイミングの diff が取れる。でも本当に存在しないファイルやディレクトリに対して diff が取れるかどうかは確かめてないのです。

なんでこんなことしてるかというと、Trac 上でなぜか diff の見れない changset があるんだよね。たぶん Trac のバージョンが古いからなんだけど、上げる段取り(いろいろあるの)が面倒なので、手元で回避しちゃうのであった。

本日のツッコミ(全1件) [ツッコミを入れる]
_ TrackBack (2007-05-19 10:14)

http://aligach.net/diary/20070518.html#p01<br>あーありがち<br>Debian 4.0 etch へアップグレード<br> elisp の byte compile がいちばん時間掛かる…。先に抜いときゃよかった。どうせ snapshot に入れ替えるつもりなのに、21 用の elisp を延々 byte compile してもらっちゃってるのはバカすぎだなぁ。 [追記] なんか一部のパッケージが信頼できないとしてインストールさ..