2009年4月15日水曜日

SVNのタグをつけるのに失敗

Subversive(EclipsePlugin)でタグをつけようとしたのですが失敗してしまう。

Tag operation for some of selected resources failed.
svn: Commit failed (details follow):
svn: No write-lock in
'作業しているローカルカレントディレクトリ'svn: :
(apr_err=155005)

とか
A path under version control is needed for this operation

とか。

Eclipseのコンソールをみると、svn copy でローカルのファイルをUploadしようとしているみたいですね。
後者のエラーは、メッセージ通りの状況でしたし。
前者のエラーもローカルにてなんかしよーとした途中のエラーなんでしょうし。
そっか、ローカル作業のものがタグの対象なんですね。ブランチの場合は、ローカル作業のものを対象にしてほしいけど、タグの場合はサーバーのものを使ってほしいんですがねー。

つーことで、サーバにあるtrunkの内容をタグのフォルダにコピーしたいだけなので、コマンドで実行するようにしました。
ローカルファイルよりは、trunkのものでタグ付けしてほしいから、これからはコマンドラインで叩こう。

タグをつけ...といえども、内容はタグのフォルダを作成して、コピーする手順です。

svn mkdir "svnサーバのパス/tags/タグの名称" -m "コメント" --username "ユーザ名"
svn copy "コピー元パス" "コピー先パス" -m "コメント" --username "ユーザ名"



ちなみに、Macの場合はMacPortでいれたSubversion。Windowsの場合にはSlik SVNを使ってみてます。

追記
SVNリポジトリエクスプローラーの New → Tag のメニューがあるのをコメントで教えてもらいました。これでtrunkのノードを選択した状態でタグをつければ、サーバのtrunkのものをタグ(のフォルダへ)コピーしてくれるんですね。お、解決です。
Newの下にあるのか!全然気づかなかったですよー そっかー Newか....
• • •