windows下svn服务器配置

1 view
Skip to first unread message

LeoReis

unread,
Mar 31, 2008, 6:03:10 AM3/31/08
to Wisdom and beauty form a very rare combination.
服务器安装svn-1.4.0-setup.exe
客户端安装TortoiseSVN-1.4.5.10425-win32-svn-1.4.5.msi

服务器配置:
创建版本目录 svnadmin create e:\svn-dir
进入e:\svn-dir\conf目录编辑svnserve.conf
添加如下行:
anon-access = none
auth-access = write
password-db = passwd
然后编辑passwd文件,在[user]下面添加用户,例如
lihongtao = password
等号前面是用户名,后面是密码


svn服务器程序配置成windows服务:
将svnservice.exe拷贝到svn的安装目录下的bin目录
进入该目录,执行如下指令
svnservice -install -d -r e:\svn-dir
然后右击我的电脑-〉管理-〉服务,找到SVNservice,设置为自动启动,然后启动

客户端使用连接:
svn://server-ip-address

建多个svn路径则
svnadmin create e:\svn-dir\project1
拷贝e:\svn-dir\conf\svnserve.conf 到e:\svn-dir\project1\conf\
编辑e:\svn-dir\project1\conf\svnserve.conf,将password-db = ../../conf/
passwd
这个改动的意思是让project1下面的用户密码使用跟svn-dir的一样
客户端可用svn://server-ip-address/project1来checkout


更多细节参考svn-book.chm,装好subversion后,此文件会出现在安装目录中。


另:如果要让某个受svn控制的目录脱离svn控制而非删除,需要逐级目录上出里面隐藏的 .svn 目录,手工删除比较麻烦,可以做个小工具来完成。
如果有linux系统,可以通过如下脚本完成。

#!/bin/bash
#
# Usage: svn_clear directory
# clear directory .svn in directory and its sub-directories.
#
PROG=`basename $0`
if [ $# -eq 0 ] ; then
echo "Usage: $PROG directories"
exit
fi

for i in $@
do
find $i -type d -name ".svn" -print | xargs rm -rf
done

当然也可以通过mount windows的文件系统来在linux上使用该脚本达到脱离svn控制的目的。
Reply all
Reply to author
Forward
0 new messages