一个很简单的需求,我想在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命令行设置 javascript:void(0)
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忽略文件和目录(文件夹)