ってカテゴリつけるのも恥ずかしい話なんだけど。

 今日もsvnでつまづいた。昨日svn importでサーバ上にアップしたhogeというディレクトリに入っているソースコード。それを更に改良したのでコミットしようと、hogeの中でsvn ciしたのだけれど、

svn: '/path/to/hoge' is not a working copy
svn: Can't open file '/path/to/hoge/.svn/entries': No such file or directory

といって怒られた。幸いこれはすぐに原因が思い当たった。このhogeはimportされただけではsvnの管理下には入らないのだろう。だって.svnないもんな。ということで、hogehoge_orgあたりに改名して、サーバ上からhogesvn coした。そしてhogehoge_orgから作業したファイルをディレクトリごとコピーして、あらためてsvn ci。しかしまた、

svn: '/path/to/hoge' is not a working copy
svn: Can't open file '/path/to/hoge/.svn/entries': No such file or directory

といって怒られる。今回はちゃんと.svnがあるにも関わらず。…一体なぜ?svn statusをかけてみると、コピーしたディレクトリにチルダがついている。versioned as file/dir/link, but type has changed、という意味らしいけどよく分からず、ここで30分弱ほど行き詰まる。そして思い当たった。私の開発環境はMacだ。hoge_orgからhogeにファイルをディレクトリごとコピーした。

 …Finderから。

 そらsvn君が作業ログ追えなくて分けわからん状態になるのも納得できるわ。というわけで念のためhogeを消してもう一度サーバからsvn coして、それからちゃんとターミナルでcpコマンドを使って作業したファイルをhoge_orgからコピー。svn statusをかけて?になってるファイルにはちゃんとsvn addをかけて、おもむろにsvn ci。無事成功。
 というわけで、ほんとどうしようもないと言うか灯台下暗しと言うか、そんな感じで解決しました。なんか自分が情けなくなったよorz。