TortoiseSVNインストールをバージョン1.7にアップグレードしたいと思います。 SVN 1.6リポジトリで実行されているVisualSVNサーバーがあります。
クライアントを更新する前にリポジトリを1.7にアップグレードする必要がありますか、それともTortoiseSVNに下位互換性がありますか?
TortoiseSVN 1.6から1.7へのアップグレード中に、作業コピーを新しい形式に変換する必要があることを知っていますが、コミット中にサーバーのバージョンを確認して適切に適応するためのロジックはありますか?
古いクライアントとサーバーは1.7サーバーとクライアントと透過的に相互運用します
...
Subversion 1.7サーバーは、Subversion 1.6と同じリポジトリ形式を使用します。したがって、オンディスクリポジトリの形式を変更せずに、1.6.xサーバーと1.7.xサーバーの間をシームレスにアップグレードおよびダウングレードすることが可能です。
何もする必要はありません。作業コピーはアップグレードされ、1.6サーバーと通信できます。
はい、そうです。
同じ作業コピー(つまり、チェックアウトされたディレクトリ)で異なるバージョンのクライアントを使用すると、問題が発生する可能性があります。また、新しいサーバーで古いクライアントを使用すると、一部の新しいサーバー機能を使用できない場合があります。
ただし、一部の新機能を除いて、新しいSVNクライアントは古いサーバーと下位互換性があります。したがって、サーバー1.6でTortoiseSVN 1.7を使用しても問題なく動作するはずです。
SVNサイトの 互換性マトリックス を参照してください。
1.6サーバー(私の場合は1.6.17)では問題なく動作します。
逸話時間:
クライアントB:
- create branch_x with lots of files
- commit
- svn mv branch_x branch_xnew
- log shows A branch_xnew, then thousands of D for each file in branch_x
- commit
- fails saying that branch_x is out of date.
- out of desperation, revert --depth inifity... same
- more desperation, checkout a clean working copy, svn mv, commit, fails "branch_x is out of date".
クライアントA:svn mv、コミット、完了。クライアントBでsvn upを実行しても競合は発生しません。全部終わった。