以前のCVSコミットから危険なコンテンツを削除する方法は?

以前のCVSコミットから危険なコンテンツを削除する方法は?

元従業員の作業を整理した後、数年前、彼らは誤ってCVSコミットに800MBのデータファイルを含めたことを発見しました。同じプロジェクトに対するいくつかの異なるコミットメントが続きました。

このデータはセキュリティに非常に敏感であり、法的制限が適用され、完全に削除する必要があります(屋根裏部屋やファイルシステムには何もありません)。

CVSを壊さずにどのようにこれらのファイルを削除できますか?

(これはLinuxホストです。rootアクセス権があり、CLIに精通していますが、CVSの専門家ではありません!)

答え1

ファイル削除を使用した後、Atticディレクトリからファイルを削除できますcvs rm

プロジェクトディレクトリからファイルを削除し、変更をコミットします。

cvs rm -f thefile
cvs commit -m 'deleted thefile' thefile

これにより、ファイルは削除可能なディレクトリthefile,vに移動します。 CVSROOT環境変数を設定したと仮定すると、次のことができます。AtticCVSROOT/projectdir

rm "$CVSROOT/projectdir/Attic/thefile,v"

ファイルは履歴とともに消えた。

$ cvs stat thefile
cvs status: nothing known about `thefile'
===================================================================
File: no file thefile           Status: Unknown

   Working revision:    No entry for thefile
   Repository revision: No revision control file

関連情報