KOIE Hidetaka (鯉江英隆)
hide****@koie*****
2003年 5月 29日 (木) 17:01:45 JST
Message-Id: <3ED5B****@mikam*****> Date: Thu, 29 May 2003 16:01:34 +0900 From: Mika Ohtsuki <mika****@mikam*****> Subject: [cvs-jp-info 109] Re: cvs remove -f の取り消し | >cvs remove -f hogehoge..... | > | >としたのですが、本来必要なファイルまで消してしまいました。まだcommitしていな | >い状態なのですが、removeを取り消す方法はありませんか? | > | 〓各ディレクトリのCVS/Entriesを覗いて、バージョン番号の頭についてる「-」 | を削除する。 | 〓他の変更がないなら、ディレクトリごとrmしてなかったことにする。 | http://www.mikamama.com/CVSBook/draft2nd/chap3-8.html | の3.8.1のおしりと3.8.2の頭を見てみてください。 きっとEntriesをいじってしまう方が簡単だと思いますがコマンドで対処するなら infoの Removing filesのところにも復活方法について書いてありますが 1. cvs -nq upして行頭にRがついているのがremove対象のファイルなのでメモする 2. それらのファイルに対して cvs add を実行する でよいはずです。 当然ですがcommitしてなかった編集途中の内容は復活しません。 UNIXなら cvs -nq up | awk '/^R/{print $2}' | xargs cvs add といった感じになります。 個人的には FILE: cvsselect #!/bin/sh mask=${1:-?} awk "/^[$mask]/{print \$2}" というスクリプトを愛用しています。 -- 鯉江英隆 <hide****@koie*****>