zoukankan      html  css  js  c++  java
  • 清除目录下的SVN信息

    今天想清除目录下的SVN信息,在网上找了找,说是有三种方法:

    一、在linux下

    删除这些目录是很简单的,命令如下
    find . -type d -name ".svn"|xargs rm -rf

    或者

    find . -type d -iname ".svn" -exec rm -rf {} \;  


    二、在windows下用以下法子:

    1、在项目平级的目录,执行dos命令:
    xcopy project_dir project_dir_1 /s /i

    2、或者在项目根目录执行以下dos命令
    for /r . %%a in (.) do @if exist "%%a\.svn" rd /s /q "%%a\.svn"

    其实第二种方法可以用来干很多事的,比如把代码中的.svn替换为任意其他文件名并在硬盘根目录下执行,就可以从硬盘上删除所有的这个文件啦。

    3、添加注册表(亲自动手测试过)
    可以将“快速删除SVN版本信息”命名增加到资源管理器的右键上,这样,鼠标点两下就能把选中目录下的所有.svn目录干掉了。

    代码为:

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN]
    @="快速删除SVN版本信息"

    [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command]
    @="cmd.exe /c D:\工具\批处理文件删除SVN版本信息.bat"
    将这段代码保存为一个.reg文件,双击确认导入注册表中不完整,后来自己手工添加。注意:文件“批处理文件删除SVN版本信息.bat”不能放 在有空格的文件夹下,确认删除时请看一下当前目录不要删除不该删的目录下的SVN版本信息。不知道怎么改进“cmd.exe /c D:\工具\批处理文件删除SVN版本信息.bat”。


    批处理文件删除SVN版本信息.bat文件内容如下:
    @echo off
    echo ***********************************************************
    echo 清除SVN版本信 息                                                                                              
    echo ***********************************************************
    :start
    ::启动过程,切换目录
    :set pwd=%cd%
    :cd %1
    echo 工作目录是:& chdir
    :input
    ::获取输入,根据输入进行处理
    set source=:
    set /p source=确定要清楚当前目录下的.svn信息吗?[Y/N/Q]
    set "source=%source:"=%"
    if "%source%"=="y" goto clean
    if "%source%"=="Y" goto clean
    if "%source%"=="n" goto noclean
    if "%source%"=="N" goto noclean
    if "%source%"=="q" goto end
    if "%source%"=="Q" goto end
    goto input
    :clean
    ::主处理过程,执行清理工作
    @echo on
    @for /d /r %%c in (.svn) do @if exist %%c ( rd /s /q %%c & echo    删除目录%%c)
    @echo off
    echo "当前目录下的svn信息已清除"
    goto end
    :noclean
    ::分支过程,取消清理工作
    echo "svn信息清楚操作已取消"
    goto end
    :end
    ::退出程序
    cd "%pwd%"
    pause

    注:最后一种方法,如果出现错误,就打开注册表,找到对应的项,吧“cmd.exe /c D:\工具\批处理文件删除SVN版本信息.bat “直接写入注册表中即可使用

    我只用了最后一种方法:

    报文件没有关联错误,找到这个注册表项:[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command]
    写入:“cmd.exe /c D:\工具\批处理文件删除SVN版本信息.bat “,注意路径

    还有一个要注意的:在使用的时候,不要在要清除的文件夹上右击,在要清除的文件夹里面的子文件夹上右击--》快速删除svn版本信息

  • 相关阅读:
    Count_sort C++
    Priority_Queue C++
    HeapSort C++
    Randomized_QuickSort C++
    QuickSort c++
    我的开发环境
    github and eclipse
    centos 7 install eclipse cdt and use github
    github commands
    文化-梁晓声
  • 原文地址:https://www.cnblogs.com/muyou/p/2163662.html
Copyright © 2011-2022 走看看