CVS のキーワード置換しないオプション
-ko オプションを使うといいらしい。Subversion の場合、デフォルトではキーワード置換しないようになっているので心配無用。
CVS や Subversion では、$Revision: $ などと記述しておくと、コミット時にそのときのリビジョンの値に置換してくれる。たとえば、$Revision: 1.1 $ だったのがコミットすると $Revision: 1.2 $ になる。これを、キーワード置換(もしくは、キーワード展開)という。
自分自身が開発元のプロダクトにとっては便利な機能であるが、外部のオープンソースなどを手元でバージョン管理する場合、勝手に置換されるとオリジナルとは違うものになってしまい困ってしまう。
CakePHP のソースコードを CVS で管理しているのだが、-ko オプションをつけずにコミットしたら勝手に置換されてしまった。後の祭りである‥・。
CVS のキーワードを取り除く
基本的には、取り除いても問題ない情報なので、
find -name "*.php" | xargs sed -i -e 's/\$\(Date\|Id\|LastChangedBy\|Revision\):[^\$]*\$//'
などと、取り除いてしまうのも手かな。