私は、cvs を簡単に導入する必要があり、最終的にWinCVSを問題なく使用できるようになった多くの人々を知っています。私は、Eclipse で cvs クライアントを使用している他の多くの人を知っています。この使用法には、Eclipse によって管理されていないプロジェクトが含まれます。私自身は、コマンド ラインに固執しています。なぜなら、GUI の抽象化の欠如が、CVS が何をしているかを常に正確に理解するのに役立つと感じているからです。3 つのソリューションはすべて、Vista、32、および 64 ビットで適切に機能します。当店はMac、Linux、Solaris、Windowsを使用しており、サーバーはLinuxマシンで、互換性に問題はありません。
ただし、クロスプラットフォームの良さを求める cvs クライアントの選択に関係なく、注意すべき問題が 1 つあります。ほとんどの cvs クライアントは、デフォルトで Unix 改行 (サーバー上) と Windows 改行 (クライアント上) の間で変換します。この変換が起こっていることを理解し、その結果に注意する必要があります。
- この変換は、Unix 改行を含むファイルをコミットしようとすると、実際の問題を引き起こします。したがって、たとえば、改行変換を行っていない限り、ファイルを Unix リポジトリから Windows ボックスにコピーして編集し、コミットすることは避ける必要があります。私の職場では、これに関していくつかの実際の問題がありました。私は、人々がマシン間でファイルをやり取りするときは、ファイルを CVS にコミットすることによってのみ行うべきであるという厳格なポリシーを制定しました。たとえば、電子メール、共有ネットワーク ディレクトリなどでは絶対に使用しないでください。
- CVS リポジトリにバイナリ ファイルがある場合、一部はバイナリ ファイルとして適切にタグ付けされていない可能性があります。*nix のみのショップでは、バイナリ フラグはほとんどのバイナリ ファイルに影響しないため、誰も気付かないでしょう。しかし、クロスプラットフォームショップでは、バイナリフラグは改行変換の試みを無効にするため、cvs がファイルを処理する方法に日常的に影響を与えます。通常、Unix ボックスからコミットされたファイルはリポジトリで正しく表現されるため、タグを変更して再更新するだけで Windows 側の問題を修正できます。すなわち、
cvs admin -kb file
cvs update -A file