cvs 删除所有版本

cvs delete all versions

我在 CVS 中有一组文件,每个文件都有多个版本。现在CVS里不需要那些文件和版本了,主要是为了space。我想从 CVS(所有版本)中完全删除这些文件。我注意到

cvs delete file1 

其次是

cvs commit 

仅从 CVS 中删除文件的最新版本。如何删除文件的所有版本。

谢谢!

在这样做之前认真考虑后果。版本控制的使用通常支持跟踪历史。我不建议继续执行此操作。

删除文件的版本通常不受欢迎,因为它会改变历史 - 标记的修订集将被改变,因此它们不再代表已保存的历史状态。

您最好预先知道 CVS 不允许删除所有修订。至少必须保留一个修订版本。下面的解决方案可能是 CVS 作者打算仅用于将修订之间的中间修订折叠为单个更改。剩余的修订版可能是 cvs removed,但如果不对存储库进行手术,则无法从存储库中完全删除。

警告:使用 cvs admin -o 会导致沙箱中出现各种问题。使用以下解决方案后,避免引起各种不良症状并非易事。

尽管有所有警告和建议不要这样做,但如果您坚持反对所有好的和合理的建议,请查看 cvs admin -o:

cvs --help admin
...
        -o range   Delete (outdate) specified range of revisions:
           rev1:rev2   Between rev1 and rev2, including rev1 and rev2.
           rev1::rev2  Between rev1 and rev2, excluding rev1 and rev2.
           rev:        rev and following revisions on the same branch.
           rev::       After rev on the same branch.
           :rev        rev and previous revisions on the same branch.
           ::rev       Before rev on the same branch.
           rev         Just rev.
...