现在的位置: 首页 > 综合 > 正文

scvn 操作

2012年06月21日 ⁄ 综合 ⁄ 共 1287字 ⁄ 字号 评论关闭

新创建的目录,不在版本控制中的直接propset svn:ignore就行

创建了一个文件夹,并且把它加入版本控制,但忽略文件夹中的所有文件的内容:
$ svn mkdir xxx
$ svn propset svn:ignore '*' -R xxx   //*表示改目录下所有文件,但并不对子目录有效,针对子目录递归需要加-R参数
$ svn commit -m 'Adding "xxx" and ignoring its contents.'

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

$ mkdir xxx
$ svn propset svn:ignore 'xxx'   xxx                    
$ svn commit -m 'Ignoring a directory called "xxx".'

对已经创建了文件夹,并在版本控制库中,如果想忽略这个文件夹,但要保持文件夹的内容:

$ svn export xxx xxx.bak               //直接mv xxx xxx.bak也一样
$ svn del xxx
$ svn commit -m 'Removing inadvertently added directory "xxx".'
$ mv xxx.bak xxx
$ svn propset svn:ignore 'xxx' -R  xxx.    
$ svn commit -m 'Ignoring a directory called "xxx".'

PS:已经在版本控制中的目录直接进行propset svn:ignore是不生效的,所以需要先删除,而后再commit,然后还原本地文件之后再进行svn:ignore设置.

svn del会从版本库中删除但是文件也被删了, 这样会造成一更新所有人的文件都被删除掉。
用带参数--keep-local可以保留本地副本, 注意别人的副本如果没有更新过也会被删除掉
svn del --keep-local config.php

delete (del, remove, rm): 从版本库中删除文件和目录。
用法: 1、delete PATH...
2、delete URL...

svn全局忽略:

,修改目录下 .subversion/config文件,取消global-ignroes的注释

global-ignores = CVS .DS_Store Thumbs.db WS_FTP.LOG _notes _vti_* *.LCK

 

补充记录一些之前关于svn认证时纠结心得:

首先是关于svn认证:

天下文章一大抄,一抄害苦后来人

不知道那位大侠写的文档(该文档被若干人死去活来的转,未见修复)中写的passwd文档内【users】段的格式是:

username - password   (正确格式是 username = password)

然后我学习了,纠结了,并且是发现若干文档都是如此写法,所以丝毫没怀疑问题根源是这里

写成该格式之后的表现是:

客户端svn checkout等操作时只提示认证失败,没有任何信息,也看不到任何日志提示错误,然后哥纠结了,发现问题根源的时候是想死但是得先弄死作者的心情啊!

不知道是不是曾经允许这样写,反正我用1.3是不可行的.而且不提示错误,排查好久!

抱歉!评论已关闭.