我离开上家公司的时候,带走了以前在公司开发用到的文档和工程代码,发现整个一套下来有接近20个G的容量,发现其中很大一部分是svn的版本记录,就是.svn文件夹。因为已经离开了上家公司,所以这些svn版本管理信息就没必要放在那占用空间,上网查询下是否有现成的工具去删除svn文件夹,发现如果是linux的话还好办直接通过控制台shell命令就可以删除,但是windows的话需要改注册表增加一个鼠标右击菜单选项来执行删除操作,因为我们删除svn这种事情很少执行,没必要为了一次删除增加右击菜单选项,而且执行完了还需要删除这个选项,操作比较麻烦,所以自己通过java写了一个删除指定目录下指定文件名的类,发现删除后20g空间变成10g左右,而且执行速度比较快,比我们直接删除还清理垃圾站效率高,所以拿出了给大家分享一下。
java文件如下
package jdj.util;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;
public class DeleteSVN {
private static Integer i = 0;
private static String fileName;
private static String deleteFileName;
static{
Properties properties = new Properties();
try {
//从配置文件读取删除路径和删除文件名
String proFileName = DeleteSVN.class.getClassLoader().getResource("delete.properties").getPath();
FileInputStream fis = new FileInputStream(proFileName);
properties.load(fis);
fileName = properties.getProperty("fileName");
deleteFileName = properties.getProperty("deleteFileName");
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 用于执行删除文件,递归调用
* @author jiang
* 日期: 2011-12-06
* @param fileName 删除文件的路径
*/
public static void deleteSvn(String fileName){
File svnFile = new File(fileName);
if(svnFile.isDirectory()){
File[] svnFiles = {};
try {
svnFiles =svnFile.listFiles();
} catch (Exception e) {
System.out.println(svnFile.getPath());
}
if(svnFiles!=null&&svnFiles.length>0){
for(File file:svnFiles){
if(deleteFileName.equals(file.getName())){
deleteSubFiles(file);
boolean flag = file.delete();
if(flag){
synchronized (i) {
i++;
System.out.println("删除文件个数为:"+i+",文件名为:"+file.getPath());
}
}
}
if(file.isDirectory()){
deleteSvn(file.getPath());
}
}
}
}
}
public static void deleteSvn(){
deleteSvn(fileName);
}
/**
* 用于执行删除文件夹下面的东西,递归调用
* @author jiang
* 日期: 2011-12-06
* @param file 要删除文件
*/
public static void deleteSubFiles(File file){
for(File subFile:file.listFiles()){
if(!subFile.isDirectory()){
subFile.delete();
}else{
deleteSubFiles(subFile);
subFile.delete();
}
}
}
public static void main(String[] args) {
DeleteSVN.deleteSvn();
System.out.println("删除文件个数为:"+DeleteSVN.i);
}
}
delete.properties文件有如下内容
fileName=H:
deleteFileName=.svn
分享到:
相关推荐
这个工具通常是一个扩展或者外壳增强程序,它可以集成到Windows资源管理器的右键菜单中,提供一键删除SVN文件夹的功能。用户只需在目标文件夹上点击右键,选择“删除SVN文件夹”,工具就会自动执行删除并提交操作,...
标题 "deleteSVN注册右击菜单中删除SVN文件夹" 涉及的是在Windows操作系统中,如何移除Subversion(SVN)在文件资源管理器上下文菜单中的“删除SVN文件夹”选项。这通常是由于用户不再需要这个功能,或者想要清理...
标题“删除.svn文件夹工具”所指的,就是一款专为了解决这个问题而设计的应用程序。它能够帮助用户快速、批量地删除指定目录下的所有.svn子文件夹,使得清理工作变得简单高效。在开发环境中,有时候我们可能需要移除...
1. **谨慎操作**:一旦使用该程序删除了 `.svn` 文件夹,对应的工作副本将失去与 SVN 仓库的关联,所有版本控制功能将无法使用。这意味着你不能再进行版本提交、更新或查看历史记录。因此,在执行删除操作前,请确保...
本文将详细介绍如何通过修改注册表来实现这一目标,并提供一个名为“删除.svn文件夹注册表”的压缩包文件,帮助用户一键删除.svn文件夹。 首先,了解注册表在Windows系统中的作用。注册表是Windows操作系统的核心...
标题中的“清除.svn文件夹小程序”就是为了应对这种情况而设计的。这个小程序的目的是删除项目中的`.svn`文件夹,以解决因版本差异引起的兼容性问题。这在更换SVN版本或者清理不再需要的历史版本时特别有用。通过...
在Windows操作系统中,删除`.svn`文件夹是一个常见的需求,特别是在处理版本控制的源代码时。`.svn`文件夹是Subversion(SVN)版本控制系统的一部分,用于存储项目的历史版本和元数据。这些文件夹在开发过程中是必不...
为了安全起见,你还可以借助第三方工具,如Revo Uninstaller,它可以更彻底地删除程序及其关联文件,包括隐藏的SVN文件夹。 总之,删除SVN文件夹涉及到对版本控制的理解以及如何正确清理和删除相关文件。在操作过程...
本资源提供了一个名为"清除文件夹svn(windows右键工具)"的实用程序,专为Windows用户设计,用于方便地清理SVN文件夹中的信息。这个工具通过右键菜单集成,使得操作更为便捷。 SVN是一个开源的版本控制系统,它允许...
"SVN文件夹清理工具"是一个专门设计用来清理这些`.svn`信息的实用程序。这个工具的主要目的是帮助用户快速、便捷地删除不再需要的`.svn`子目录和文件,从而释放磁盘空间,简化备份过程,或者在不保留版本历史的情况...
3. 删除已删除但在本地的工作副本中仍存在的文件:当一个文件在SVN仓库中被删除,但在本地工作副本中未被删除时,清理工具会将这些文件从本地删除。 4. 更新和修复:有时,由于网络问题或文件系统错误,SVN工作副本...
3. **安全删除**:理想的删除工具会递归地遍历目录,查找并删除.svn文件夹,同时确保不误删其他重要文件。 4. **确认操作**:在执行一键删除之前,最好先在小范围内测试,确认其不会对文件系统造成负面影响。 5. **...
通过运行这个脚本,用户可以在任何文件夹上右键点击,然后选择“删除SVN文件夹”来批量移除包含的`.svn` 文件夹,而无需手动搜索和删除。 关于这个过程的详细知识包括: 1. **Subversion(SVN)**: 是一个开源的...
描述中的“用法:delsvn 需要处理的文件夹具体路径”提到了一个名为`delsvn.bat`的批处理文件,这通常是一个包含了命令行指令的脚本,用于自动化删除指定目录及其子目录下的所有`.svn`文件夹。批处理文件是Windows...
2. **查找.svn文件夹** 打开你的项目文件夹,在其中寻找隐藏的`.svn`文件夹。这个文件夹包含了所有关于版本控制的信息。注意,`.svn`文件夹默认是隐藏的,因此可能需要调整文件夹选项来显示隐藏文件。 3. **检查...
svnserve是svn的服务器端程序,负责处理客户端的请求。我们可以使用svnserve命令来启动svn服务器。例如: svnserve -d -r /path/to/repo 这将启动svn服务器,并将版本库设置为/path/to/repo。 六、将svnserve设置...
1. **删除.svn文件夹**:svn在每个版本控制的目录下都会创建一个隐藏的.svn文件夹,存储版本信息。清理时,应将这些文件夹全部删除。 2. **清理工作副本**:在命令行中,使用`svn cleanup`命令可以清理工作副本中的...
1.直接执行注册表脚本程序 2.会在右键文件夹,弹出列表项中出现DeleteSVN选项 3.点击DeleteSVN选项,就会删除该文件夹下所有有关svn的控制文件 4.该脚本用于xp,win7等系统
标题提到的".svn删除软件"通常是指一种工具或方法,用于批量删除选定文件夹或项目中的`.svn`文件。这种操作可能在以下几种情况下被需要: 1. **迁移至其他版本控制系统**:如果团队决定从SVN迁移到Git等其他版本...
它利用Python的标准库以及Windows API来递归地遍历指定目录,查找并删除所有的`.svn`目录。该脚本首先通过用户输入获取目标目录,然后进行必要的路径清理,确保路径格式正确。接下来,它会询问用户是否确认删除操作...