TortoiseSVN 1.6 の新機能
TortoiseSVN 1.6 は、以前のすべての TortoiseSVN リリースのスーパーセットであり、現在の安定版および「最良」のリリースと見なされています。以前のバージョンに含まれるものはすべて 1.6 にも含まれていますが、1.6 には以前のリリースには存在しなかった機能とバグ修正が含まれています。
TortoiseSVN 1.6 は、以前のすべての TortoiseSVN リリースのスーパーセットであり、現在の安定版および「最良」のリリースと見なされています。以前のバージョンに含まれるものはすべて 1.6 にも含まれていますが、1.6 には以前のリリースには存在しなかった機能とバグ修正が含まれています。
旧クライアントとサーバーは、1.6 サーバーおよびクライアントと透過的に相互運用できます。ただし、クライアントとサーバーの両方が最新バージョンでない限り、1.6 の新機能の一部は利用できない場合があります。また、新機能は動作するものの、クライアントが新しくサーバーが古い場合、効率が低下するケースもあります。
新機能 | 最低限必要なクライアント | 最低限必要なサーバー | 最低限必要なリポジトリ | 注記 |
---|---|---|---|---|
ツリーコンフリクトの処理 | 任意 | 任意 | 任意 | 1.6 より古いサーバーを使用することも可能ですが、一部の種類のコンフリクトは検出されません。 |
ワーキングコピーの形式がアップグレードされました。これは、1.5 以前の Subversion クライアントは、Subversion/TortoiseSVN 1.6 で作成されたワーキングコピーを *使用できない* ことを意味します。ワーキングコピーは 自動的にアップグレードされます。
警告: Subversion 1.6 クライアントが 1.6 より前のワーキングコピーを検出した場合、ワーキングコピー形式に触れると *自動的に* アップグレードし、古い Subversion クライアントでは読み取れなくなります。マシン上で複数のバージョンの Subversion を使用している場合は、どのワーキングコピーでどのバージョンを使用するか注意して、ワーキングコピーを誤ってアップグレードしないようにしてください。
誤って 1.5 ワーキングコピーを 1.6 にアップグレードし、1.5 にダウングレードしたい場合は、change-svn-wc-format.py
スクリプトを使用してください。詳細については、こちらの FAQ エントリ を参照し、使用方法については --help
オプションを指定してスクリプトを実行してください。
TortoiseSVN 1.6 は、file:///
URL を介した BDB リポジトリへのアクセスをサポートしなくなりました。ただし、svn://
または http://
経由での BDB リポジトリへのアクセスには影響しません。
file:///
URL 経由でまだアクセスしている BDB リポジトリがある場合は、svnadmin ツールを使用してリポジトリを FSFS 形式に変換する必要があります。このツールは、SVN コマンドラインクライアント で入手できます。
リポジトリを変換するには、Subversion book の 手順 に従ってください。
Subversion 1.6 は、更新/マージ/スイッチ操作中にツリーコンフリクトを検出できます。これらの項目は、問題を示すためにコンフリクトとしてマークされます。
Subversion は依然として名前変更を「コピー+削除」操作として扱っているため、ツリーコンフリクトを引き起こすファイルの名前変更は、ファイルの追加と削除の観点からのみ検出できることに注意してください。このため、ツリーコンフリクト検出中に誤検出が発生する可能性があります。
TortoiseSVN 1.6 は、ツリーコンフリクトが発生したときに操作中に表示し、コンフリクトオーバーレイおよび [変更の確認] ダイアログにも表示します。
新しいコンフリクト解決ダイアログは、ツリーコンフリクトのタイプと、それらのコンフリクトを解決する方法のヒントを示すことで、そのようなコンフリクトの解決を支援します。
TortoiseSVN 1.5 で導入されたログキャッシュは、よりスムーズに動作するように改善されました。キャッシュ管理を制御するための広範なオプションセットが利用可能です。詳細については、設定ダイアログを参照してください。
また、同じ URL または UUID を共有するリポジトリが完全にサポートされるようになりました。
リビジョングラフは大幅に変更され、ほぼ完全に書き直されました。
新しいリビジョングラフには、出力を調整するためのオプションが多数追加されました。たとえば、個々のサブツリーを非表示/表示することが可能になりました。
新しいインターフェース IBugtraqProvider2 をプラグインで使用すると、コミットをより詳細に制御し、ユーザーにより多くの情報を提供できます。
この新しいインターフェースにより、プラグインはコミットを拒否したり、コミット成功後にタスクを実行したり (例: issue tracker の issue にエントリを追加するなど) できます。また、プラグインはオプション/設定ダイアログを表示することもできます。さらに、プラグインは各コミットにリビジョンプロパティを追加できます。
Issue tracker 用のプラグインの作成に関心のある開発者は、C++ および C# のサンプルプラグインのコードを contrib フォルダー から入手できます。
1.6 には言及する価値のある変更が他にもたくさんあります
もちろん、これらは今回の 1.6 リリースで行われた機能強化/変更のすべてではありません。changelog を参照するか、リポジトリで SVN ログを表示すると、変更点の詳細なリストを入手できます。
Subversion 1.6 は、フォルダー外部参照だけでなく、単一ファイル外部参照もサポートするようになりました。ただし、使用する前に注意すべき重大な問題がいくつかあります。
ファイル外部参照は、フォルダーの svn:externals
プロパティに値を追加することで作成されます。ただし、そのようなファイル外部参照が追加されると、svn:externals
プロパティを削除してもワーキングコピーから削除できません。ワーキングコピーからファイルを削除する唯一の方法は、フレッシュチェックアウトを行うことです。Subversion issue #3351 を参照してください。
現在、バイナリファイルを外部参照として追加することはできません。Subversion issue #3368 を参照してください。