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)
どうすれば修正できますか?
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では、これを手動の手順にします。作業コピーでSubversion1.7を使用する前に、ユーザーは新しいコマンドを実行して
svn upgrade
、メタデータを新しい形式に更新する必要があります。このコマンドには時間がかかる場合があり、一部のユーザーにとっては、新しい作業コピーを単にチェックアウトする方が実用的な場合があります。
—Subversion1.7リリースノート
TortoiseSVNは、次の書き込み操作で作業コピーのアップグレードを実行します。
作業コピーのアップグレード
Subversion 1.7では、作業コピーの形式に大幅な変更が加えられています。以前のリリースでは、書き込み操作が実行されると、Subversionは作業コピーを新しい形式に自動的に更新していました。ただし、Subversion 1.7では、これを手動の手順にします。
TortoiseSVN 1.7で既存の作業コピーを使用する前に、まずフォーマットをアップグレードする必要があります。古い作業コピーを右クリックすると、TortoiseSVNはコンテキストメニューに1つのコマンドのみを表示します:作業コピーのアップグレード。
—TortoiseSVN1.7リリースノート
Eclipseから、プロジェクトを右クリック->チーム->アップグレードで選択できます
MacOSの場合:
svnアップグレード
マシンでSVN1.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
ページの途中にあるAlexeyShcherbakの回答を参照してください。
この問題は、現在使用しているよりも古いSVNのファイルを含むプロジェクトをコンパイルしようとしているためです。
この問題を解決するには2つの解決策があります
他の作業コピーがネストされている場合は、作業コピーをアップグレードする必要があるという奇妙なメッセージを受け取ることもあります。Symphonyプロジェクトでこの問題が発生しました。一部のフレームワークフォルダがコピーされており、公開される前に適切にクリーンアップされていなかったと思われます。
この場合は、ファイルを検索して、不要なフォルダを.svn
削除し.svn
てください(もちろんルートで削除しないでください)。
Tortoise-SVNの最新バージョンにアップグレードした後、最初に「アップグレード」を実行する必要がありました(「更新」ではありません!)。
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
。
詳細については、NetbeansSubversionクライアントのFAQを参照してください。
Visual StudioのAnkhSVNでは、ソリューションエクスプローラーのソリューションのコンテキストメニューの下に[作業コピーのアップグレード]オプションもあります(該当する場合)。
Subversion1.7にアップグレードできます。Subversion 1.7に更新するには、Xcode5以降で既存のプロジェクトを起動する必要があります。これにより、警告「<code>作業コピーProjectNameをSubversion 1.7にアップグレードする必要があります」(下のスクリーンショットに表示)が表示されます。
Subversion 1.7にアップグレードするには、「<code>Upgrade」ボタンを選択する必要があります。これには少し時間がかかります。
ターミナルを使用している場合は、プロジェクトディレクトリで以下のコマンドを実行してSubversion1.7にアップグレードできます 。svnupgrade
一度持っていることに注意してくださいupgraded to Subversion 1.7 you cannot go back to Subversion 1.6.