SVNコミットはできません。私はこのエラーが出ます:
org.Apache.Subversion.javahl.ClientException: The working copy needs to be upgraded
svn: Working copy 'C:\.... is too old (format 10, created by Subversion 1.6)
どうすれば修正できますか?
Subversionクライアントを少なくとも1.7にアップグレードする必要があります。
コマンドラインクライアントでは、svn upgrade
コマンドを発行して作業コピーフォーマットを手動でアップグレードする必要があります。
作業コピーのアップグレード
Subversion 1.7では、作業コピーのフォーマットに大幅な変更が加えられました。 Subversionの以前のリリースでは、書き込み操作が実行されると、Subversionは作業コピーを新しい形式に自動的に更新していました。しかしながら、Subversion 1.7はこれを手動のステップにするでしょう。 Subversion 1.7を作業コピーとともに使用する前に、ユーザーは新しいコマンド
svn upgrade
を実行してメタデータを新しい形式に更新する必要があります。このコマンドはしばらく時間がかかるかもしれません、そして、何人かのユーザにとっては、単に新しい作業コピーをチェックアウトすることがより実用的かもしれません。
- Subversion 1.7リリースノート
TortoiseSVNは次の書き込み操作で作業コピーのアップグレードを実行します。
作業コピーのアップグレード
Subversion 1.7では、作業コピーのフォーマットに大幅な変更が加えられました。以前のリリースでは、書き込み操作が行われるとSubversionは作業コピーを新しいフォーマットに自動的に更新していました。しかしながら、Subversion 1.7はこれを手動のステップにするでしょう。
TortoiseSVN 1.7で既存の作業コピーを使用する前に、まずフォーマットをアップグレードする必要があります。古い作業コピーを右クリックした場合、TortoiseSVNはコンテキストメニューに1つのコマンドのみを表示します。作業コピーのアップグレードです。
- TortoiseSVN 1.7リリースノート
eclipseから、プロジェクトを選択して右クリック - >チーム - >アップグレード
MacOSの場合:
sVNのアップグレード
この問題は、現在使用しているよりもOLder SVNのファイルを含むプロジェクトをコンパイルしようとしたことによるものです。
この問題を解決するには2つの解決策があります
自分のマシンでSVN 1.7にアップグレードしたばかりで(アップグレードしたばかりのように)、Eclipseワークスペースにアップグレードする必要があるプロジェクトがたくさんある場合は、Unixベースのシステムのターミナルウィンドウで次のことを実行できます。
cd [Eclipse/workspace] # <- you supply the actual path here
for file in `find . -depth 2 -name "*.svn"`; do svn upgrade `dirname $file` ; done;
少しグーグルした後、私はWindowsユーザーにとって同等のものと思われるものを見つけました:
http://www.rqna.net/qna/mnrmqn-how-to-find-all-svn-working-copies-on-win-xp.html
ページの途中でAlexey Shcherbakによる答えを見てください。
最新バージョンのTortoise-SVNにアップグレードした後、(「アップデート」ではなく)まず「アップグレード」を行う必要がありました。
作業コピーがネストされている場合は、作業コピーをアップグレードする必要があるという奇妙なメッセージを受け取ることもあります。 Symphonyプロジェクトでこの問題を抱えていたのは、いくつかのフレームワークフォルダーが正常にコピーされていて、それらが公開される前に正しくクリーンアップされていなかったためです。
この場合は、ファイルで.svn
を検索し、不要な.svn
フォルダーを削除してください(もちろん、自分のものは削除しないでください)。
Visual Studioの AnkhSVN を使用すると、ソリューションエクスプローラのソリューションのコンテキストメニューの下に[アップグレードワーキングコピー]オプションも表示されます(該当する場合)。
Netbeans(7.2以降)からこのエラーが発生した場合は、別にインストールしたSubversionのバージョンがNetBeansのバージョンより高いことを意味します。私の場合、Netbeans(v7.3.1)のSVNはv1.7でしたが、SVNをv1.8にアップグレードしただけです。
Tools > Options > Miscellaneous (tab) > Versioning (tab) > Subversion (pane)
を見て、Preferred Client = CLIを設定すると、インストールされているSVNのパスをC:\Program Files\TortoiseSVN\bin
に設定できます。
詳細は NetBeans SubversionクライアントFAQ にあります。
Subversion 1.7にアップグレードできます。 Subversion 1.7にアップデートするためには、Xcode 5以上で既存のプロジェクトを起動する必要があります。これにより、警告The working copy ProjectName should be upgraded to Subversion 1.7
が表示されます(下のスクリーンショットを参照)。
Subversion 1.7にアップグレードするには、Upgrade
ボタンを選択してください。これには少し時間がかかります。
端末を使用している場合は、プロジェクトディレクトリで以下のコマンドを実行してSubversion 1.7にアップグレードできます。svn upgrade
upgraded to Subversion 1.7 you cannot go back to Subversion 1.6.
を取得したら