我最近将信息提交给一个文件。只有几行高度机密的代码。我需要彻底地从Subversion版本库中删除这些信息。我怎么能做到这一点,而不会恢复和失去变化?它只在一个文件中?那么,是否可以删除对该文件的所有引用,然后重新提交正确的文件?从Subversion提交中删除数据?
回答
我认为你必须
- 记录不好的承诺和以后每犯一个或几个补丁
- 转储库
- 建立新仓库
- 进口的所有修订在转储到存储库的错误提交之前
- 依次重新应用每个补丁(并在提交之前删除几行秘密信息)
这是唯一的解决方案。 – khmarbaise 2011-12-27 17:36:43
SVN提供一个名为svndumpfilter
的命令,允许您转储存储库并从中排除路径。然后,将该转储文件加载到一个新的存储库中,该文件将会消失。
svnadmin dump /path/to/repos > dump.file
svndumpfilter exclude path/to/remove <dump.file> newdump.file
svnadmin load /path/to/newrepos < newdump.file
唯一的解决办法是过滤在服务器端存储库。你应该使用像这样的命令:
svnadmin create /path/to/newrepos
svnadmin dump /path/to/repos --incremental | svndumpfilter excdlude path/to/remove | svnadmin load /path/to/newrepos
你能等到Subversion 1.8出来吗?那就是当高度要求的消除命令被执行时(当然,除非他们已经决定将它移到Subversion 1.9或2.0)。
不是吧?
您唯一能做的就是取下您的存储库,执行svnadmin dump
,使用svndumpfilter
对其进行过滤以删除更改,然后使用svnadmin load
重新加载存储库。这可以在单个管道中完成,但取决于您的存储库大小,可能意味着停机几个小时。
我已经做了好几次了。这并没有什么乐趣,特别是当你必须在凌晨2点这么做的时候,因为当你的开发人员忙于使用它的时候你无法取下你的存储库。
值得注意的是,消除仍然不在1.8.11,以防万一有人在这里结束并激动。 :) – dannysauer 2015-03-24 19:10:23
- 1. Subversion空格删除提交钩子
- 2. 从CCScene提交/删除UIViewController?
- 3. 访问Subversion提交外部数据
- 4. 提交表单后记录没有从数据库中删除
- 5. 从数据库中删除最近的提交
- 6. 从Subversion版本库恢复数据(原始数据删除)
- 7. http提交subversion
- 8. 从Subversion中提交/更新中排除特定文件
- 9. 如何从Gitlab中的提交表中删除任何提交?
- 10. 从git中删除大型提交
- 11. 从回购中删除提交状态
- 12. 从提交中删除文件
- 13. 从分支中间删除提交
- 14. 如何从表单提交中删除“提交查询”?
- 15. 删除提交人
- 16. Subversion提交问题
- 17. 从Subversion中删除web.config(ASP.NET项目)
- 18. Subversion合并提交和前次提交
- 19. 为Subversion提交“Ctrl + S”提交
- 20. 如何从GitHub完全删除提交?
- 21. 从Subversion提交相关外部文件
- 22. 如何在提交表单后从URL中删除参数?
- 23. 提交之前从表单的参数中删除空值
- 24. 从AJAXREQUEST中删除数据
- 25. 从RRDTool中删除数据
- 26. 从数据库中删除
- 27. 从MYSQL中删除数据
- 28. 从NSKeyedArchvier中删除数据
- 29. 从numpy.array中删除数据
- 30. LINQ删除,插入,提交
root密码,是吧?你是否控制仓库? – 2011-12-27 17:09:55
[SVN Obliterate!]的可能重复(http://stackoverflow.com/questions/560684/svn-obliterate) – 2011-12-27 17:13:41
Yip,root密码。 *叹息* – coderama 2011-12-27 17:19:36