`
philip01
  • 浏览: 47139 次
  • 来自: ...
社区版块
存档分类
最新评论

删除工程文件下的CVS,SVN

阅读更多

package com.overseas.util;

import java.io.File;


/**
 * 删除工程文件下的CVS,SVN
 * @since 2009-03-28
 * @author springmvc2006@sina.com
 *
 */
public class RemoveFile {
 
 public static void main(String[] args){
  //deleteCVSAndSVNDirectory(new File("d:/workspace2009/work/OOO300_m15"), "CVS");
  //deleteCVSAndSVNDirectory(new File("D:/workspace2009/work/ms"), ".svn");
  //deleteCVSAndSVNDirectory(new File("D:/workspace2009/Report"), ".svn");
  
 }
 

 
 /** 
  * 删除单个文件 
  * @param   sPath    被删除文件的文件名 
  * @return 单个文件删除成功返回true,否则返回false 
  */ 
 public static boolean deleteFile(File file) {  
     boolean flag = false;  
     // 路径为文件且不为空则进行删除  
     if (file.isFile() && file.exists()) {  
      System.out.println(file.getAbsolutePath());
         file.delete();  
         flag = true;  
     }  
     return flag;  
 }
 
 
 /** 
  * 删除指定的目录(文件夹)以及目录下的文件 
  * @param   fileName 被删除文件 
  * @return  目录删除成功返回true,否则返回false 
  */ 
 public static void  deleteCVSAndSVNDirectory(File f, String fileName){
  if(f.isDirectory()){
   File[] tempFiles = f.listFiles();
   for(File tempFile:tempFiles){
    if(fileName.equals(tempFile.getName()) && tempFile.isDirectory()){
     deleteAll(tempFile);
    }else{
     deleteCVSAndSVNDirectory(tempFile, fileName);
    }
   }
   
   
  }
  
 }
 
 /** 
  * 删除目录(文件夹)以及目录下的文件 
  * @param   dirFile 被删除文件 
  * @return  目录删除成功返回true,否则返回false 
  */ 
 public static boolean deleteAll(File dirFile) {  
 
     //如果dir对应的文件不存在,或者不是一个目录,则退出  
     if (!dirFile.exists() || !dirFile.isDirectory()) {  
         return false;  
     }  
    boolean flag = true;  
     //删除文件夹下的所有文件(包括子目录)  
     File[] files = dirFile.listFiles();  
     for (int i = 0; i < files.length; i++) {  
         //删除子文件  
         if (files[i].isFile()) {  
             flag = deleteFile(files[i]);  
             if (!flag) break;  
         } else {  
             flag = deleteAll(files[i]);  
             if (!flag){
              break;  
             }
         }  
     }  
     if (!flag){
      return false;  
     }
     //删除当前目录  
     if (dirFile.delete()) {  
      System.out.println(dirFile.getAbsolutePath());
         return true;  
     } else {  
         return false;  
     }  
 } 


}

分享到:
评论

相关推荐

    SVN源代码管理 软件工程

    - **检查改动**:`svn status`命令列出工作目录中所有文件的状态,显示哪些文件被修改、添加或删除。 - **解决冲突**:当多个用户同时修改同一文件时,可能会出现冲突。SVN会标识出冲突的部分,开发者需要手动解决...

    在Eclipse中使用SVN与CVS代码管理工具管理项目

    二、 SVN(Subversion) - CVS(Concurrent Version System)的替代和升级版本先说说CVS,CVS是开源代码的配置管理工具,其源代码和安装文件都可以免费下载。记得在学校读研的时候,学校实验室的代码全部都用CVS管理,为...

    本机使用SVN教程

    - 在该目录下新建一个子目录,作为工程目录,如:`F:/svn/project`。 - 右键点击该目录,选择“TortoiseSVN” -&gt; “Create repository here”,完成本地仓库的创建。 - 创建完成后,TortoiseSVN会在该目录下自动...

    SVN客户端使用说明

    - **SVN工程浏览**:通过右键菜单的"SVN Repo-browser",可以查看和操作远程仓库中的文件和目录。 - **其他操作**:如"Checkout"用于获取仓库的最新版本到本地,"Update"用于同步本地与仓库的差异,"Commit"用于...

    CVS和Nightly Build技术

    7. 文件操作:CVS能够处理目录和文件的增加、删除、移动以及重命名等操作。 8. 安全性:CVS还提供了加密连接和密码保护等安全机制,以防止未授权的访问和数据泄露。 9. 增强工具:CVS具备多种扩展工具和插件,这些...

    SVN使用详情

    6. **解决错误**:如果出现错误,尝试删除`d:\\myplugins`下的`artifacts.xml`、`content.xml`、`site.xml`文件之一或全部,然后重新启动MyEclipse。 ##### 在服务器端安装SVN 1. **安装服务器端**:安装`Setup-...

    android studio删除module方法

    8. **清理CVS服务中的Module**:最后,你需要登录到CVS服务的工程对应文件夹,再次找到并删除ttttest的相关条目,确保在版本控制系统的层面上也完全移除了这个Module。 通过这些步骤,你应该能够成功地从Android ...

    Subversion使用简介

    - **导入**: 使用`svn import`命令将本地的工程文件导入到版本库中。 - **示例命令**: `svn import C:\project\project1 file:///D:/repos/project1 -m "Initial import"` **3.3. 检出指定的目录** - **检出**: ...

    android工程师简历模板

    1. 熟练掌握Java SE及MVC(Script)开发,熟悉版本控制系统SVN和CVS。 2. 一般掌握C语言、Visual Basic、Visual FoxPro、J2EE、J2ME。 3. 掌握Dreamweaver、Photoshop等软件,曾实现ASP图书管理系统。 4. 精通Struts...

    PowerDesigner 使用介绍

    它可以与CVS、SVN等版本控制系统集成,方便团队协作和版本控制。此外,PowerDesigner支持自定义模板和样式,可以按照企业规范输出图表和文档,确保一致性。 总的来说,PowerDesigner是一款功能全面、强大的建模工具...

    电子书库源代码

    8. **版本控制**:虽然未直接提及,但源代码的管理可能涉及到版本控制工具,如早期的CVS或SVN,这在团队协作和代码历史追踪中至关重要。 通过分析和学习《电子书库源代码》,开发者可以深入了解DELPHI编程环境,...

    Version Control with Subversion

    - **结构冲突处理**:在某些情况下,当文件被重命名或删除时,可能会发生结构冲突,需要特别处理。 - **性能优化**:针对大型项目或高性能需求,Subversion提供了多种性能优化手段,如使用更快的存储后端、调整网络...

    计算机操作系统(基于UNIX)

    UNIX系统上常用的版本控制系统有`CVS`、`SVN`和`Git`,它们用于追踪代码变更、协同开发。 九、软件包管理 `apt`(Advanced Package Tool)和`yum`是常见的包管理器,用于安装、升级和卸载软件。 通过深入学习和...

    UNIX基础

    5. **rm**:删除文件或目录(小心使用,不可逆)。 6. **cp**:复制文件或目录。 7. **mv**:移动或重命名文件或目录。 8. **cat**:查看文件内容。 9. **more** 和 **less**:分页查看文件内容。 10. **grep**:...

    rose基础视频教程

    6. **团队协作与版本控制**:了解Rose如何与其他版本控制系统(如CVS或SVN)集成,以便于团队成员共享和同步模型。 7. **Rose在敏捷开发中的应用**:虽然Rose主要面向传统的瀑布模型,但教程也会讨论如何在敏捷开发...

    delphi5实例编程与技巧

    9. **工程管理与版本控制**:介绍如何组织和管理项目,以及如何使用版本控制系统(如CVS或SVN)协同开发。 10. **组件开发与自定义控件**:教授如何创建自定义组件,扩展VCL库,以满足特定项目需求。 书中的实例...

    jbuilder速成资料

    - 版本控制集成:JBuilder可以与常见的版本控制系统如CVS、SVN等集成,实现代码版本管理。 - 团队协作:通过版本控制,开发者可以协同工作,追踪代码变更历史。 7. **部署与发布** - 打包成可执行文件:JBuilder...

    Git快速入门学习.pdf

    版本控制系统是一种用于管理和追踪文件、目录或项目工程的修改历史的软件工程技术。它允许多人协同开发,记录软件的开发过程,保证代码的一致性、完整性、安全性,并帮助统计工作量、解决冲突以及平行开发。没有合适...

    madaming.IntelliJ_IDEA13基础教程

    - **选择版本控制插件**:IntelliJ IDEA支持多种版本控制系统插件,包括Git、Subversion (SVN)、ClearCase、CVS、Mercurial (hg4idea)、Perforce、Team Foundation Server (TFS) 和 Visual SourceSafe (VSS)。...

Global site tag (gtag.js) - Google Analytics