zoukankan      html  css  js  c++  java
  • SVN 取消版本控制并添加至忽略列表

    忽略已经版本控制的文件
    忽略文件和目录

    起因:

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

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

            不能忽略已添加至SVN的文件或目录,若要忽略,只能选择删除重新添加并以新增文件的方式被忽略。

      

      正如官方指南所言: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-06  
    @REM  Version: 1.1  
    @REM  Copyright: Up to you.  
    @REM  YOUR FILE PATH 中不能包含中文,否则便会直接遍历delCommon.bat脚本所在的磁盘
    @REM #########################################################  
    
      
    @echo on  
    setlocal enabledelayedexpansion  
      
    @REM 设置你想删除的目录  
    @REM YOUR FILE PATH 中不能包含中文,否则便会直接遍历delCommon.bat脚本所在的磁盘
    set folder_path=YOUR_FILE_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即可.

  • 相关阅读:
    day12 Python操作rabbitmq及pymsql
    day11 队列、线程、进程、协程及Python使用缓存(redis/memcache)
    day10 Python作用域 Python2.7与Python3.x的类继承的区别、异步IO、多进程,多线程简介
    day09 Python socket编程
    day08 面向对象补充及单例模式
    day07 configparser xml subprocess 面向对象
    day06 Python的一些内建变量、反射、hashlib模块、re模块、os模块、sys模块
    day05 Python多层装饰器、模块、序列化、字符串格式化、生成器和迭代器、递归、time、datetime模块、logging模块
    day04 Python一些内置函数及装饰器
    查看旧版jexus命令
  • 原文地址:https://www.cnblogs.com/huanghongbo/p/5246569.html
Copyright © 2011-2022 走看看