svnlinux命令 linux svn配置文件( 四 )


这就是svn cleanup所作的:它查找工作拷贝中的所有遗留的日志文件,删除进程中的锁 。如果Subversion告诉你工作拷贝中的一部分已经“锁定”了 , 你就需要运行这个命令了 。同样,svn status将会使用L 显示锁定的项目:
$ svn statusLsomedirMsomedir/foo.c $ svn cleanup$ svn statusMsomedir/foo.c20、拷贝用户的一个未被版本化的目录树到版本库 。svn import命令是拷贝用户的一个未被版本化的目录树到版本库最快的方法,如果需要,它也要建立一些中介文件 。
$ svnadmin create /usr/local/svn/newrepos $ svn import mytreeAdding mytree/foo.c Adding mytree/bar.c Adding mytree/subdir Adding mytree/subdir/quux.h Committed revision 1.
在上一个例子里 , 将会拷贝目录mytree到版本库的some/project下:
$ svn listbar.c foo.c subdir/
注意,在导入之后,原来的目录树并没有转化成工作拷贝 , 为了开始工作,你还是需要运行svn checkout导出一个工作拷贝 。
另附:为SVN加入Email通知
可以通过Subversion的Hook脚本的方式为SVN加入邮件列表功能
编译安装了Subversion后 在源码的tools 下有一个comm-email.pl的Perl脚本 , 在你的档案目录下有一个hooks目录,进入到hooks目录把post-commit.tmpl 改名为post-commit并给它可执行的权限 。
更改post-commit脚本 把comm-email.pl脚本的决对路径加上 , 否则 SVN找不到comm-email.pl
REPOS="$1"
REV="$2"
/usr/local/svn/resp/commit-email.pl "$REPOS" "$REV" email@address1.com email@address2.com
#log-commit.py --repository "$REPOS" --revision "$REV"
最后一行是用来记日志的 svnlinux命令我不用这个功能 所以注释掉了.
-------------------------------------------------------------------------------------------------------
注意:为保证代码安全.最好要备份.每个操作都要谨慎
linux配置SVN , 添加用户,配置用户组的权限 用xshell登陆服务器,cd切换到服务器中svn的项目仓库目录中,然后切换到conf文件中(也可使用xftp),会看到3个文件 , 分别是
authz、passwd、svnserve.conf
首先编辑svnserve.conf主配置文件,主要是对以下几项修改
如果后面大家要用到组权限的话,大家看authz-db = authz 前面应该会有 # 号键,记得去掉,这样才能在下面分配组权限的时候 , 才能起作用 。
建立svn用户以及密码:
配置组:
配置各个组权限:
保存修改后的svnserve.conf ,passwd,authz 三个文件
然后用下面的命令重启一下svn
查看svn进程:ps -ef |grep svn或者ps aux | grep svn
强制杀死进程:kill -9 进程号
重启svn(/home/svn为自己的目录地址):svnserve -d -r /home/svn
最后看看是不是成功了,可以在本地测试一下,看看账户是否可用,对应的权限是不是已经有了,不是该组的用户应该不能访问没有赋予权限的目录的
helloword仓库:
现在对于def项目中,我不想让产品部的人看到开发部和数据部的目录下面的数据怎么办?可以通过=来设置,没有设置权限的人统统不能访问,=这一句的目的 , 就是割断权限继承性,使得管理员可以定制某个目录及其子目录的权限,从而完全避开其父目录权限设置的影响
svnlinux命令的介绍就聊到这里吧 , 感谢你花时间阅读本站内容,更多关于linux svn配置文件、svnlinux命令的信息别忘了在本站进行查找喔 。

推荐阅读