cvs remove の confilict を復旧する方法
2台のパソコンで作業していて、片方でファイルを更新して commit し、他方でファイルを(実は余計なファイルだったので)削除した。そしてその削除を commit しようとしたら、cvs がエラーを通知してきた。そのときのメッセージ。
$ cvs ci -m "hoge" filename : cvs commit: Up-to-date check failed for `filename' cvs [commit aborted]: correct above errors first!
リポジトリから取り出そうとしてみた。
$ cvs update filename cvs update: conflict: removed filename was modified by second party C filename
conflict があると怒られた。
cvs add でファイルを復活させてから、もう一度削除しなおしてみた。
$ cvs add filename cvs add: filename, version 1.1, resurrected U filename $ cvs remove filename cvs remove: scheduling `filename' for removal cvs remove: use 'cvs commit' to remove this file permanently
それから、commit してみた。(考えてみれば、同じことを繰り返してるだけなので同じ状況に陥るだけ)
$ cvs ci -m "hoge" filename : cvs commit: Up-to-date check failed for `filename' cvs [commit aborted]: correct above errors first!
もう一度 cvs add でファイルを復活させてから、cvs update で最新の状態に戻す。
$ cvs add filename cvs add: filename, version 1.1, resurrected U filename $ cvs update filename P filename
filename を削除して、cvs remove し、cvs commit する。
$ cvs remove filename cvs remove: scheduling `filename' for removal cvs remove: use 'cvs commit' to remove this file permanently $ cvs ci -m "hoge" filename
うまくいった。