22

私がグーグルに行くところはどこでも私はこの問題に対して同じ答えを得るが、それは私にとって間違った答えである。もともと私は自分のサーバーにWindows用のSubversion1.5.6をインストールし(私はWindows Server 2008を実行しています)、プロジェクトのリポジトリを作成しました。次に、ラップトップでTortoiseクライアントバージョン1.6.Xを使用して、プロジェクトを更新しました。コミット後のフックスクリプトを使用しようとするまでは、すべてが厄介でした(Webページの変更を反映するためにコミット時にwwwrootのフォルダーを更新しています)。「このクライアントは古すぎて、作業用コピー「XXX」を使用できません」というメッセージが表示されました。

そこで、ラップトップでSVNクライアントをアンインストールし、サーバーからリポジトリを削除しました。次に、サーバー上に新しいリポジトリを最初から作成し、TortoiseSVNバージョン1.5.6をインストールしました。クライアントのバージョンがサーバー上のSubversionと同じである場合、それらはうまく機能するはずです。ラップトップにリポジトリを再度ダウンロードしてフックスクリプトを再インストールした後、同じメッセージが表示されます...

試行錯誤しながら協力してくれるリポジトリを見つけるために、リポジトリを完全に消去し、クライアントを再インストールしなければならないのは、非常に骨の折れる作業であり、混乱を招きます。TortoiseSVNとサーバーのSubversionの両方が1.5.6である場合にリポジトリが主張する理由については、理由がわかりません(オンラインで見つけることはできません)。

なぜ私がこのメッセージを受け取るのかについて洞察を与えることができる人はいますか?おそらく、サーバーSVN 1.5.6が文句を言わないようにするために、どのバージョンのTortoiseSVNを使用する必要があるかを教えてくれる人でさえも。私のフックスクリプトはサーバーのコマンドラインから機能するので、それが原因ではないことがわかります。前もって感謝します。

4

6 に答える 6

15

SVN のサーバー バージョンは 1.5.6 でしたが、サーバーにインストールした TortoiseSVN クライアントはバージョン 1.6.3 でした。wwwroot 作業コピーをチェックアウト (または、TortoiseSVN から提供された右クリック オプションを使用して更新) し、その作業コピーのバージョンを更新すると、SVN サーバーはそれが古いバージョンだったために更新できませんでした。

ファイルhippoからTortoiseSVN 1.5.6をダウンロードし、サーバー上の作業コピーを再チェックアウトしましたが、すべてうまくいきました!

于 2009-08-19T20:38:39.773 に答える
3

あなたの問題の原因はポストコミットフックスクリプトではないと主張していますが、それがまさにあなたの問題の根源であるというのが私の推測です。post-commit スクリプトが実行されると、どのようにして Subversion サーバーからファイルを取得し、Web サーバーにコピーできるのでしょうか? それらをチェックしませんか?さらに、ポストコミットフックスクリプトをインストールするまで、すべてが正常に機能していたと言います。

TortoiseSVN をクライアントとして含む混合モードのクライアント/サーバー SVN インストール状況で以前に作業したことがありますが、同じリポジトリで動作するクライアントが同じバージョンである限り、非互換性に遭遇したことはありません。

さらに詳しく説明できるように、コミット後のフックの内容を投稿していただけますか?

于 2009-08-18T21:28:27.360 に答える
1

私の場合、Eclipseコードをある場所から別の場所に移動すると、問題が発生しました。解決するために、svn リポジトリからプロジェクトをチェックアウトします。次に、古いプロジェクトで、すべての svn ファイルを消去しました。(単純に .svn を検索して削除します) 次に、コンテンツをチェックアウトしたばかりのプロジェクトにコピーすると、変更が表示され、プロジェクトが最新の状態になります。この方法は、他の厄介なエラーにも適用できます。これが誰かを助けることを願っています

于 2014-01-24T08:03:56.223 に答える
0

コミット後のフックスクリプトが実行しているsvnコマンドを確認してください。このコマンドのバージョンが、リポジトリにアクセスする最後のSVNクライアントのバージョンと一致することを確認してください。

デフォルトでは、Subversionクライアントの新しいバージョンを使用すると、リポジトリがそのバージョンにアップグレードされます。これは、突然古いクライアントが機能しなくなることを意味します。

于 2009-08-18T21:46:01.270 に答える
0

1.6 から 1.5 に下げる場合は、ダウングレードする必要があります。リポジトリを移動する方法を教えてはくれませんが、その方法に応じて、リポジトリ自体のバージョンを取得する必要があります。

http://wiki.open.collab.net/wiki/Subversion_Client_FAQ#head-ed7f8e6b7f3265c74eaf7d49dcd4aab85bae2a12

于 2009-08-18T21:36:11.603 に答える
0

同じエラーが発生しました。しかし、原因は、svn 1.5 クライアントでプロジェクトをチェックアウトしたことと、Eclipse の subclipse プラグインがバージョン 1.4 だったことです。したがって、subclipse プラグインを 1.6 バージョンに更新するとうまくいきました。そのため、問題は subclipse 1.4 が svn 1.5 クライアントでチェックアウトされたプロジェクトでは機能しないことでした。

これが誰かに役立つことを願っています。

于 2010-11-16T15:56:21.707 に答える