SVN 取消版本控制并添加至忽略列表

Posted 黄洪波写点东西的地方

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SVN 取消版本控制并添加至忽略列表相关的知识,希望对你有一定的参考价值。

起因:

  由于项目中的IDE Jdeveloper在某些指定目录下面会生成server.xml以及common文件夹,且包含一个名为bc4j.xcfg的文件,每次当IDE设置发生变化,或者新建某些目录,这些文件都会被修改或者新增,而我不愿意将这些变化体现在SVN提交列表中.

  正如SVN官方指南所言:如果你不小心添加了一些应该被忽略的文件,你如何将它们从版本控制中去除而不会丢失它们?或许你有自己的IDE配置文件,不是项目的一部分,但将会花费很多时间使之按照自己的方式工作。(忽略文件和目录,忽略已经版本控制的文件)

  

  正如官方指南所言:TortoiseSVN → Unversion and add to ignore list,取消版本控制并添加至忽略列表.

  由于项目中存在的server.xml以及common/bc4j.xcfg文件多而且分布复杂,一个个取取消并添加至忽略列表太麻烦,于是将整个过程分成了两步.

  1.取消版本控制.

    a.使用batch脚本删除本地的server.xml以及common/bc4j.xcfg(工作环境在window下)

      脚本如下:      

@REM #########################################################  
@REM  Name: 递归删除指定的目录,请把此文件放在你希望执行的那个目录  
@REM  Desciption:   
@REM  Author: HONGBO  
@REM  Date: 2016-03-04  
@REM  Version: 1.0  
@REM  Copyright: Up to you.  
@REM #########################################################  

  
@echo on  
setlocal enabledelayedexpansion  
  
@REM 设置你想删除的目录  
set folder_path= you file root path
cd %folder_path%
set WHAT_SHOULD_BE_DELETED=common 

for /r . %%a in (!WHAT_SHOULD_BE_DELETED!) do (  
    if exist %%a (  
  echo "delete"%%a   
  rd /s /q "%%a"  
 )  
)  

@REM /s 递归
@REM /q 静默
@REM call 与 不call都行
call del server.xml /s 
  
pause

    b.提交删除,排除需要保留的文件

 

  2.添加至忽略列表

    在根目录建立server.xml 和common目录,此时有两种忽略方式,

    i.本地忽略方式,不体现到整个SVN项目团队中.

        使用SVN客户端的全局忽略样式 ,右键->设置->全局忽略样式  ,此时该两种文件仍然以问号文件的样式显示,但是在SVN提交时,这些文件会被忽略,不会体现在未控制版本的文件列表中.

    ii.全局忽略方式,即服务端忽略方式,体现到整个SVN项目团队中

        右键->增加至忽略列表->server.xml(recursively),此种方式会与服务端同步,整个团队的所有人将会同步此忽略,所有该两种文件会以忽略图标的样式显示.

  

  若是在某些特定情况下被忽略的的文件或文件夹仍然需要提交,只需要将此文件像普通文件一样add, commit即可.

以上是关于SVN 取消版本控制并添加至忽略列表的主要内容,如果未能解决你的问题,请参考以下文章

如何在 TortoiseSVN 中取消忽略文件?

svn怎么忽略有版本控制的本地问题?

取消svn版本控制

SVN添加忽略后,怎么解除被忽略的文件

svn怎么忽略部分文件更新?

window SVN设置忽略文件列表