如何从旧的 CVS 提交中删除危险的内容?

如何从旧的 CVS 提交中删除危险的内容?

在清理一名前雇员的工作后,我发现他们几年前无意中在 CVS 的提交中包含了 800MB 的数据文件。随后又对同一项目做出了其他几项承诺。

这些数据对安全性极其敏感,受到法律限制,需要完全删除(阁楼或文件系统中没有任何内容)。

如何在不损坏 CVS 的情况下删除这些文件?

(这是一台 Linux 主机,我有 root 访问权限并且 CLI 很流利,但不是 CVS 专家!)

答案1

使用 删除文件后,您可以从 Attic 目录中删除该文件cvs rm

在您的项目目录中,删除该文件并提交更改:

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

这会将文件移动thefile,vAttic您的目录中CVSROOT/projectdir您可以删除它的目录。假设您已经设置了 CVSROOT 环境变量,您现在可以执行以下操作

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

相关内容