CVS利用者がSubversionへ移行するときの注意点

Subversionは、CVSのコマンドイメージを踏襲しているので、あまり違和感なく使えますが、それでもCVSとの違いを意識して使わないと、はまる場合があります。

下記は、CVSを使っていた人にSubversionの使い方を説明するときに、特に注意してもらっている点になります。

バージョン管理の単位の違い

CVSではファイル単位でバージョン管理が行われていましたが、Subversionではリポジトリ全体でバージョンが管理されます。
リポジトリ全体でバージョンが管理されることにより、変更に対するファイル同士の関連性がわかるようになりますので、commit時には、同じ変更に対するファイルをまとめてcommitするようにしてください。
ばらばらにcommitすると、それぞれ違うバージョン番号となるので、ファイル同士の関連性が見えなくなってしまいます。

未登録ファイルの見え方の違い

CVSではupdate時(cvs updateコマンド)に、自分の作業コピー配下にある未登録のファイルに対して"?"というマークと共に表示されましたが、Subversionでは表示されないようです。ファイルの登録漏れに気をつけてください。
Subversionで未登録のファイルを確認する際には、svn statusで確認することになります。(CVSのstatusとは内容が違う)

ファイル名変更用のコマンド

Subversionでは、ファイル名変更のためのコマンドとしてsvn moveが用意されています。

svn move 変更前ファイル名 変更後ファイル名

svn moveを使ってファイル名を変更することにより、Subversionではファイル名の変更を履歴として保持してくれます。
svn moveを使用せずにファイル名を変更してしまうと、個々に削除と追加がされたものとして扱われてしまいますので注意してください。(CVSと同じになってしまう)