SCMエラーの対処方法

494 views
Skip to first unread message

加藤敬

unread,
Apr 17, 2008, 10:36:52 AM4/17/08
to cocoa-d...@googlegroups.com
毎度、御世話になります。
加藤敬です。

リポジトリ作成に、Subversionを使っています。

チェックアウトしてきたソースを起動する度に、次のようなエラーメッセージを表示されます。
----------------------------------------------------
SCMエラー
エラー:155005(Working copy not locked; this is probably a bug, please
report)説明:Directory
'/Users/kato/src/fileToCoreData/trunk/build/fileToCoreData.build/fileToCoreData.pbxindex/strings.pbxstrings/.svn'
containing working copy admin area is missing

----------------------------------------------------

何故、このように成ったのか判りません。
現状でも、問題ないように思えますが、対処方法を教えて下さい。
参考になりそうな、URLだけでも教えて頂けませんか?

よろしくお願いします。

narumi

unread,
May 4, 2008, 3:55:39 AM5/4/08
to cocoa-dev-japan
buildディレクトリをsvnの管理対象から外してあればそもそも起きないと思うんですが。
対処としては強制でbuildディレクトリ丸ごと削除のコミットして
peかconfファイルあたりで除外対象にしてしまうとか
ここのディスカッションのなかにこの対処に関連することを書いている方がいますよ。

加藤敬

unread,
May 4, 2008, 12:05:39 PM5/4/08
to cocoa-d...@googlegroups.com
narumiさま

毎度、私の質問に答えて頂き、本当にありがとうございます。

さて、先にリポジトリにあった"build"を、削除してしまった所為なのか、未だに解決しておりません。

.subversion/config
の中で、「global-ignores」が在る行に、buildディレクトリ以下のファイルを無視するようにしたのですが、やはり、エラーメッセージは変わっておりません。

lobal-ignores = build *.pbxbtree *.pbxstrings *.pbxsymbols Release
*.pbxindex build/.svn/entries

 他に、ふたパターンを試してみたのですが、以下のメッセージが出ました。

$ cd 作業ディレクトリ/trunk
$ svn pe svn:ignore build
svn: None of the environment variables SVN_EDITOR, VISUAL or EDITOR is
set, and no 'editor-cmd' run-time configuration option was found

$ svn pe svn:ignore build/*
svn: 'build/Release' is not a working copy

巧くいっていない。どうしたものか.....
もう、しばらく調べてみます。


2008/05/04 16:55 narumi <j.na...@gmail.com>:
>
> buildディレクトリをsvnの管理対象から外してあればそもそも起きないと思うんですが。
> 対処としては強制でbuildディレクトリ丸ごと削除のコミットして
> peかconfファイルあたりで除外対象にしてしまうとか
> ここのディスカッションのなかにこの対処に関連することを書いている方がいますよ。
> >
>

narumi

unread,
May 4, 2008, 5:05:30 PM5/4/08
to cocoa-dev-japan
まず、buildディレクトリの削除のコミットですが

ワーキングコピーのbuildディレクトリはまず、
rm -rf <ワーキングコピーのbuid ディレクトリのパス>
とかで消しちゃって、


svn delete -m "delete some" <ワーキングコピーのbuid ディレクトリのパス>
で消し、その後

svn commit -m "hogehoge"
で削除をリポジトリにコミットします

このときにロックがどーこーってエラーがでるようならsvn cleanupとかするとコミットできるかも。


今回の場合、peやconfで無視の設定をするのは、こののちビルドしたときのための事後処理に当たります。


SVN_EDITORがどーこーというエラーメッセージは、
特定の環境変数がみつからないし、confのeditor-cmdの設定項目もないですと書いてありますな、エラーメッセージ自体に。
bashなんかの場合、export SVN_EDITOR=emacか、export SVN_EDITOR=viとかすれば、
次にpe使うときにエラーメッセージでないで、エディタ立ち上がります

svnのエラーメッセージは、シングルクォートの後に続く英文丸ごとでぐぐると、ごろごろ対処法がでてくるもんですよ。

加藤敬

unread,
May 5, 2008, 12:33:30 AM5/5/08
to cocoa-d...@googlegroups.com
ありがとうございます。やっと、解決出来ました!

結果として、次の作業をしました。

bash-3.2$ svn delete -m "delete some" <ワーキングコピーのbuid ディレクトリのパス>
svn: Local, non-commit operations do not take a log message
"ローカルの、コミットを伴わない操作にはログメッセージは必要ありません"


bash-3.2$ svn delete <ワーキングコピーのbuid ディレクトリのパス>
svn: Working copy '<ワーキングコピーのディレクトリのパス>/trunk' locked
svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)
bash-3.2$ svn cleanup
bash-3.2$ svn delete <ワーキングコピーのbuid ディレクトリのパス>
D <ワーキングコピーのbuid ディレクトリのパス>
bash-3.2$ svn commit -m "hoge"
Sending trunk/English.lproj/MainMenu.nib/classes.nib
Sending trunk/English.lproj/MainMenu.nib/info.nib
Sending trunk/English.lproj/MainMenu.nib/keyedobjects.nib
Deleting trunk/build
Sending trunk/hogehoge.xcodeproj/hoge.mode1v3
Sending trunk/hogehoge.xcodeproj/hoge.pbxuser
Sending trunk/hogehoge_AppDelegate.h
Sending trunk/hogehoge_AppDelegate.m
Transmitting file data .......
Committed revision ??

以上。

Reply all
Reply to author
Forward
0 new messages