当从svn存储库中删除文件时,用户可以在签出旧版本时访问它们.这显然是源代码控制的一大优势.
是否可以从存储库中删除文件?我知道这会损害包含该文件的过去修订版本的完整性.
例如,专有代码可能无意中被提交到开源项目的公共svn存储库.是否有任何支持的方法将其从存储库中删除,因此即使回顾过去的修订版也无法检索它?
mik*_*iku 16
http://subversion.tigris.org/faq.html#removal
在某些特殊情况下,您可能希望销毁文件或提交的所有证据.(也许有人意外地提交了一份机密文件.)这并不容易,因为Subversion是故意设计的,永远不会丢失信息.修订是不可变的树,彼此建立在一起.从历史记录中删除修订版会导致多米诺骨牌效应,在所有后续修订版中产生混乱,并可能使所有工作副本无效.
然而,该项目计划有一天实施一个svnadmin obliterate命令,该命令将完成永久删除信息的任务.(见问题516.)
与此同时,您唯一的办法是svnadmin转储您的存储库,然后通过svndumpfilter(不包括坏路径)将转储文件传输到svnadmin load命令中.有关详细信息,请参阅Subversion书的第5章.