【发布时间】:2017-02-23 21:05:33
【问题描述】:
我知道 SVN 的全部意义在于永远无法永久删除任何内容,我的问题与“永久删除”功能或类似功能无关。
我注意到代码已意外提交到我们的 SVN 存储库。这是属于另一家公司的代码,在产生任何法律影响之前,我需要想办法永久删除此代码,包括它曾经存在的所有痕迹。
注意 1:此后还有其他代码修订。
注意2:所有需要删除的代码都在一个文件夹下
注意 3:SVN 由第三方托管在云端 (Atlassian)。
我现在的想法是:
- 对所有版本进行 SVN 转储并在本地恢复
- “删除”托管 SVN 中的所有数据(我该怎么做?)
- 然后在每个文件夹的基础上同步修订,其中我排除了有问题的文件夹。我过去根据文件夹导入了修订历史记录,所以我知道这是可能的。
如果没有更简单的方法,我该如何删除/清空整个 SVN 服务器或创建一个新服务器来替换当前服务器?同样,由于我们的 SVN 是由第三方托管的,我无法访问服务器本身的文件结构,但需要依赖 SVN 命令。
【问题讨论】:
-
即使您删除了托管的 SVN 文件,第 3 方主机也会在其服务器备份中保留您的旧文件。您只能希望备份被加密并保持这种状态。您应该就此联系 Atlassian。
-
将
folder替换为file就可以了:stackoverflow.com/questions/2050475/… 但是@bmkorkut 关于在云中备份文件的论点是非常有效的。如果他们正确地进行备份,您将永远从您的 repo 的所有副本中取出该文件夹 -
@eckes 感谢您提供该链接。 svnadmin obliterate 本来不错,但我明白为什么它不存在。我想我现在需要弄清楚如何在我们自己的 repo 上执行它之前进行测试。
标签: svn