在清理一名前雇员的工作后,我发现他们几年前无意中在 CVS 的提交中包含了 800MB 的数据文件。随后又对同一项目做出了其他几项承诺。
这些数据对安全性极其敏感,受到法律限制,需要完全删除(阁楼或文件系统中没有任何内容)。
如何在不损坏 CVS 的情况下删除这些文件?
(这是一台 Linux 主机,我有 root 访问权限并且 CLI 很流利,但不是 CVS 专家!)
答案1
使用 删除文件后,您可以从 Attic 目录中删除该文件cvs rm
。
在您的项目目录中,删除该文件并提交更改:
cvs rm -f thefile
cvs commit -m 'deleted thefile' thefile
这会将文件移动thefile,v
到Attic
您的目录中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