かつて代官山らへんで働いてたengineerのUnityブログ

サーバサイドやってきたエンジニアがUnityとか触って遊ぶだけのブログ

F**kin svn!!!

svn updateを行おうとしたらsvnがゴネ始めた

svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)


なるほどなるほど
svn cleanupをご所望か

svn: E000022: Can't convert string from native encoding to 'UTF-8':
svn: E000022: ../../Confidential/Doc/?\232?\168?\173?\229?\174?\154?\230?\184?\136?\227?\129?\191plist/ABCDE.plist

wtf!!?
恐らく日本語名のファイルにお怒りなのだろう
うちはWindowsMac/Linuxの開発者が混合しているのでそうなるのもわかる

Can't convert string from native encoding to 'UTF-8':でググってみるとこのブログに辿り着いた

オデの日記@WEB系: svnでどんなに頑張っても"can't convert string from 'utf-8' to native encoding"エラーが治らない


なんか同じ状態っぽい
とりあえず脳死状態で上から打ち込んでみる
が、上手くいかない


やはり脳死プレイはよくないな...
上からなにをやっているのか考えながら進めていく

export LC_CTYPE=ja_JP.utf8

ロケールをja_JP.utf8に設定している
これをすると日本語の文字化けが防げたりするが、内部でなにがどうなって化けないようになるのかはよくわからない
たいていの場合はこれでどうにかなるそうです、ならなかったけど

locale -a | grep ja
localedef -f UTF-8 -i ja_JP ja_JP.utf8

そもそもロケールが存在しない場合があるらしい
locale -a | grep jaで一覧を表示してlocaledef -f UTF-8 -i ja_JP ja_JP.utf8で追加してやる
一覧に普通にあったのでここはスルー

export LC_ALL=ja_JP.utf8

恐らくすべての環境のロケールを一択で設定する項目にja_JP.utf8を設定している
すでに最終手段感が出ている
しかしこれも効果なしでLC_CTYPEと設定がかぶってるよと警告が出てしまう始末

export LC_CTYPE=ja_JP.sjis

ロケールをja_JP.sjisに設定している
つまり日本語特化型に設定しているということ
他の部分で色々不都合が生じそうだが...

これでもダメか...と思われたがどうやら前に設定したLC_ALL=ja_JP.utf8が優先されてしまっていただけでexport LC_ALL=してやることでsvn cleanupすることが出来た。なんてこった。

自分の打ってるコマンドくらい100%理解していなければいけないと実感させられたのである



thank you svn!!