代码改变世界

svn ignore 的用法

2017-03-26 23:24  youxin  阅读(25882)  评论(0编辑  收藏  举报

 一个很简单的需求,我想在add一个文件时忽略里面某种格式的文件,怎么弄?

选中文件夹,然后tortoiseSvn->setting->

 

global ignore pattern:是客户端属性,一旦在这里设置,这台机子所有的svn版本库都会忽略这些文件。

我增加了画红线的部分:

*.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo __pycache__ *.rej *~ #*# .#* .*.swp .DS_Store [Tt]humbs.db  

*.tlog  *.obj *.pch *.tlh *.tli  *.pdb  *.lastbuildstate  *.Build.CppClean.log *.ipch  

设置完后,再次点击add,显示要add的文件列表,发现我们设置的后缀都过滤掉了。

 

 

 

svn ignore 的用法(忽略文件及目录)

svn ignore 的用法(忽略文件及目录)

若想创建了一个文件夹,并且把它加入版本控制,但忽略文件夹中的所有文件的内容:

$ svn mkdir spool 
$ svn propset svn:ignore '*' spool 
$ svn ci -m 'Adding "spool" and ignoring its contents.'

若想创建一个文件夹,但不加入版本控制,即忽略这个文件夹:

$ mkdir spool 
$ svn propset svn:ignore 'spool' . 
$ svn ci -m 'Ignoring a directory called "spool".'

若已经创建了文件夹,并加入了版本控制,现在想忽略这个文件夹,但要保持文件夹的内容:

$ svn export spool spool-tmp 
$ svn rm spool 
$ svn ci -m 'Removing inadvertently added directory "spool".' 
$ mv spool-tmp spool 
$ svn propset svn:ignore 'spool' . 

$ svn ci -m 'Ignoring a directory called "spool".'

 

 

如果想在SVN提交时,忽略某个文件,也就是某个文件不提交,可以使用

svn propedit svn:ignore命令。

下面详细介绍一下使用步骤。

单纯的看svn官方文档和一些网上搜索的资料,有时候真的不如亲自试验的好。

svn propedit svn:ignore 目录名称。

注意,在使用这个SVN的属性编辑前,你得确保后面的“目录名称”是SVN版本控制的目录。

如果要忽略此目录下的文件,可以如下操作。

比如,想忽略/product目录下的test.PHP文件。前提是/product目录必须在svn版本控制下,而test.php文件不在svn版本控制。

svn st先看一下状态,会显示如下:

?     /product/test.php

我们需要将test.php文件加入忽略列表。

此时先设置SVN默认的编辑器

export SVN_EDITOR=vim

然后,使用svn propedit svn:ignore ,用法如下

svn propedit svn:ignore /product

此时会出现一个VIM的编辑窗口,表示需要将某个文件加入到忽略列表里

我们在编辑窗口中,写入

test.php

然后保存,并退出VIM编辑器。

这时候会有一个提示:属性 “svn:ignore” 于 “product” 被设为新值。

表示文件test.php的svn:ignore属性设置成功。

然后使用svn st查看,会显示:

M        product

我们需要提交,然后这个svn:ignore属性才会起作用

svn ci -m '忽略test.php文件'

这时候,无论你如何修改test.php文件,再使用svn st时,也不会出现修改提示符合M了。

 

svn之svn:ignore命令行设置 http://www.cnblogs.com/ayanmw/archive/2012/03/16/2399976.html

svn propset <prop_name> <prop_value> <path>  -- 设置属性

svn propget <prop_name> <path>  -- 得到属性

svn propdel <prop_name> <path>  -- 删除属性

svn propedit <prop_name> <path> -- 使用编辑器更改属

svn proplist -v <path>  -- 打印文件或目录的属性信息

版本相关的更改加入参数 --revprop -r <version>

 

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

2.添加至忽略列表

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

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

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

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

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

  

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

 

svn global-ignores svn:ignore用法

vn:ignore、global-ignores区别:
1、svn:ignore:只对当前目录有效;
global-ignores:是全局有效,就是所有目前都有效;
2、svn:ignore:必须每个工作目录都要设置,个性化配置;
global-ignores:只需要配置一次,使用方便;

另一个忽略文件的方法是添加这些文件到globalignore list .他们最大的不同是全局忽略列表是一个客户端特性。它会作用到所有的(all)subversion 项目。但只能在pc客户端使用。

设置SVN忽略文件和目录(文件夹)