这里假设SVN项目的目录为 /data/svn/project,我们想排除trunk/test.exe文件和trunk/notallowed/目录,操作步骤如下及执行的svn命令(在svn安装目录的bin目录下)如下:

# 首先将svn库整个导出
 svnadmin dump /data/svn/project > project_original.dump
 # 然后将project_original.dump文件里面不需要的文件进行排除并生成一个新的dump文件
 type project_original.dump | svndumpfilter exclude trunk/test.exe trunk/notallowed > project_new.dump
 # 接下来创建一个新的svn项目并将上面的dump文件导入到一个新的项目中
 svnadmin create /data/svn/project_new
 svnadmin load /data/svn/project_new < project_new.dump

最后将原来的project目录删除并将project_new修改成project即可。需要注意的是dump命令会将svn项目中的所有修改和历史记录都导出来,这样导出的dump文件会很大,而且导入的时间也比较长。

从服务器端彻底删除SVN版本库中部分文件夹或文件

若要彻底删除SVN版本库某一文件夹或文件,可采取这种方法(举例说明):

例:假设SVN库路径为E:/svn/project,库中的目录结构为 
QA/Trunk
Software/Tags/test.exe

删除Software/Tags/目录下的test.exe文件

操作步骤为: 
把SVN库dump出来 
使用svndumpfilter过滤掉要删除的文件 
新建一个SVN库 
再将处理好的文件load到新的SVN库里 
具体命令为: 
>svnadmin dump E:/svn/project > aaa.dump
>type aaa.dump | svndumpfilter exclude /Software/Tags/test.exe > bbb.dump
>svnadmin create E:/svn/project_new 
>svnadmin load E:/svn/project_new < bbb.dump

然后再将新建的project_new 重命名为project,以前的project可以移走,或是另取一个名称.(因为在TRAC中使用的SVN目录是project,用户所使用的SVN目录也是project)

此方法在SVN库里版本不多的情况下完全可以达到彻底删除SVN版本库某一文件夹或文件的效果,但是如果SVN库里的版本过多,在dump版本的时候会因存储空间不足,而无法dump版本.也就无法操作了.这时须另挂能满足其存储空间的硬盘操作.

SVN如何恢复已删除文件或文件夹

用TortoiseSVN:
1.在本地working copy中,用TortoiseSVN->Show log查看版本库的历史记录。可以用search。
2.找到删除该文件或者文件夹的版本,在Log message里右键Revert the changes from this revision。
3.该文件或文件夹就被恢复到本地的working copy中了。如果是误删除的,commit到Repository里就行了。

用Eclipse的Subclipse插件:
1.用Team->Show SVN Repository History查看版本库的历史记录。
2. 找到删除该文件或者文件夹的版本,右键Revert to XX version.
3.该文件或文件夹就被恢复到本地的working copy中了。如果是误删除的,commit到Repository里就行了。

【转】如何彻底删除SVN中的文件和文件夹(附恢复方法)的更多相关文章

  1. 如何彻底删除SVN中的文件和文件夹(附恢复方法)

    在SVN中如果删除某个文件或文件夹也可以在历史记录中进行找回,有的时候需要彻底删除某些文件,即不希望通过历史记录进行恢复,需要在服务器上对SVN的数据进行重新整理 这里假设SVN项目的目录为 /dat ...

  2. linux下rm命令删除文件名中包含特殊字符的文件【转】

    转自:http://blog.itpub.net/143526/viewspace-1060083/ 1. 删除带“-”的文件名的方法 2. 删除包含其它特殊字符的文件 3. 删除系统打不出的乱码文件 ...

  3. iOS开发中常见bug!(内附解答方法)

    序言 你是否曾经修复了一个 bug ,随后又发现了一个跟刚修复 bug 有关的 bug ,又或是修复 bug 的方式引起了另一个 bug ? 然而这些问题是绝佳的学习机会.所以我们怎样尽可能多地从修复 ...

  4. eclipse与SVN 结合(删除SVN中已经上传的问题)

    问题是: 我有一个文件已经上传到了SVN ,但是我想把这个在SVN上的目录删除掉? 解决方法如下: 1,第一步,先在本地删除所有的你需要删除的文件: 2,第二步,选择当前的项目右键“Team”—“Up ...

  5. 一次向svn中增加所有新增文件 svn add all new files【转】

    以下摘自:<卓有成效的程序员>之自动化 转自:http://blog.csdn.net/spare_h/article/details/6677435 我经常会一次往Subversion里 ...

  6. 删除git中无用的大文件

    推荐阅读:为什么你的 Git 仓库变得如此臃肿 有时候我们不小心提交了一些大文件上去,后来删除了,但是已经于事无补了,整个git的提及已经蹭蹭上去了. 这个时候怎么办呢? 1. 查看有哪些大文件(to ...

  7. 如何删除xcode 中过期的描述性文件

    1.使用终端 首先 打开终端 cd ~/Library/MobileDevice/Provisioning\ Profiles/再删除所有 rm *.mobileprovision 2.直接找到文件夹 ...

  8. SVN中怎样忽略当前文件不提交

    场景 在使用SVN进行版本管理时,有时一些自动生成的文件比如证书等,在每台电脑上都会不同,如果将其提交,则会冲突. 怎样将指定的文件或者指定文件后缀的文件忽略提交. 注: 博客主页: https:// ...

  9. 一次向svn中增加所有新增文件 svn add all new files

    svn st | grep '^\?' | tr '^\?' ' ' | sed 's/[ ]*//' | sed 's/[ ]/\\ /g' | xargs svn add

随机推荐

  1. SSL和TSL的区别【转】

    SSL由从前的网景公司开发有1,2,3三个版本,但现在只使用版本3 TLS是SSL的标准化后的产物 有1.0 1.1 1.2三个版本 默认使用1.0 TLS1.0和SSL3.0几乎没有区别 事实上我们 ...

  2. 解决sqlite删除数据后,文件大小不变问题 转载

    原文地址:http://blog.csdn.net/yangchun1213/article/details/7656146   说了这么多,没进主题,我的主题是给Sqlite在删除数据后擦屁股. 大 ...

  3. QEMU, a Fast and Portable Dynamic Translator

    AbstractWe present the internals of QEMU, a fast machine emulator using an original portable dynamic ...

  4. jquery--动态篇

    jQuery中隐藏元素的hide方法 让页面上的元素不可见,一般可以通过设置css的display为none属性.但是通过css直接修改是静态的布局,如果在代码执行的时候,一般是通过js控制元素的st ...

  5. sqlmap批量扫描burpsuite拦截的日志记录

    1.功能上,sqlmap具备对burpsuite拦截的request日志进行批量扫描的能力 python sqlmap.py -l hermes.log --batch -v 3 --batch:会自 ...

  6. 利用Teensy进行EM410x卡模拟以及暴力破解EM410X类门禁系统可行性猜想

    前些天Open入手了Teensy++2.0模拟EM410X,并且针对EM410X的门禁进行了一次暴力破解测试,以下就是相关代码以及内容. 什么是低频?什么是EM410x? 首先,我不得不再次提一下那些 ...

  7. javascript 正则表达式判断只能是中文、英文或者中文加英文

    var reglx =/^[\u4e00-\u9fa5a-zA-Z]+$/ 这个是至少有一个中文或者英文 var reglx =/^[\u4e00-\u9fa5a-zA-Z]*$/ 这个是0个以上的中 ...

  8. 转:【AI每日播报】从TensorFlow到Theano:横向对比七大深度学习框架

    http://geek.csdn.net/news/detail/139235 说到近期的深度学习框架,TensorFlow火的不得了,虽说有专家在朋友圈大声呼吁,不能让TensorFlow形成垄断地 ...

  9. [Android] android:visibility属性应用

    在Android开发中,有这样一种场景: 当edittext中有内容时候,旁边的提交或确定按钮显示: 当edittext中内容为空的时候,提交或确定按钮隐藏: 要实现起来其实并不困难.很多控件都有vi ...

  10. Python CODE——Nonblocking I/O client AND Delaying Server

    #!Nonblocking I/O - Chapter 5 -pollclient.py import socket,sys,select port=51423 host='localhost' sp ...