svn服务器

yum install subversion
rpm -ql subversion查看安装位置
/usr/bin/svnversion --version 就可以查看svn的版本,这样就说明svn安装成功

创建svn版本库目录 mkdir -p /services/svnrepos
创建版本库 svnadmin create /services/svnrepos/wine 会生成一些文件
cd /services/svnrepos/wine

进入conf目录(该svn版本库配置文件)
    authz文件是权限控制文件
    passwd是帐号密码文件
    svnserve.conf SVN服务配置文件
    
设置帐号密码
    vi passwd
    在[users]块中添加用户和密码,格式:帐号=密码,如 admin=admin

创新互联专注于康县网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供康县营销型网站建设,康县网站制作、康县网页设计、康县网站官网定制、小程序设计服务,打造康县网络公司原创品牌,更为您提供康县网站排名全网营销落地服务。

设置权限
    vi authz
    在末尾添加如下代码:
    [groups]        设置组
    admin = user1
    [/]                根目录权限设置(就是“svnrepos”这个文件夹)
    admin=rw        用户admin权限是:可读写
    admin2=r        用户admin2权限是:可读
    @admin = rw    设置组权限
    [svnrepos:/winne]     设置根目录下“winne”文件夹的权限
    admin=rw        用户admin权限是:可读写
    admin2=r        用户admin2权限是:可读

修改svnserve.conf文件
    vim svnserve.conf
    打开下面的几个注释:
    anon-access = read #匿名用户可读 客户端Checkout(提取)的时候会有Not authorized to open root of edit operation"错误,改为none参数正常

    auth-access = write #授权用户可写
    password-db = passwd #使用哪个文件作为账号文件
    authz-db = authz #使用哪个文件作为权限文件
    realm = /services/svnrepos # 认证空间名,版本库所在目录

配置防火墙端口
    vi /etc/sysconfig/iptables
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT


启动svn版本库
    svnserve -d -r /services/svnrepos/wine

查看SVN进程
    ps -ef|grep svn|grep -v grep

检测SVN 端口
    netstat -ln |grep 3690

停止重启SVN
killall svnserve //停止
svnserve -d -r /services/svnrepos/wine // 启动

如果已经有svn在运行,可以换一个端口运行
svnserve -d -r /services/svnrepos/wine/ --listen-port 3391

测试

SVN服务已经启动,使用客户端测试连接。
客户端连接地址:svn://192.168.31.115
用户名/密码: admin/admin
测试创建文件夹等操作。

将文件导入版本库:
终端输入:svn import [源路径] [目标版本库路径] -m [日志信息]
源路径可以是相对路径,导入时会递归导入源路径下的所有文件和文件夹,目标版本库路径需要绝对目录(反正我试验是这样的),例如版本库的目录是:home/user/svn/myproject/。则应该这样写:file:///home/user/svn/myproject/
例如将当前目录导入版本库myproject:svn import . file:///home/user/svn/myproject -m"导入文件"

从版本库导出:
导入后原文件并未被纳入版本管理,若想获得受版本控制的文件,就需要从版本库导出
终端输入:svn co [版本库路径] [导出目标路径]
例如将myproject库中的文件导出到当前目录:svn co file:///home/user/svn/myproject .


外网web端使用

首先安装subversion,跟第2条服务器端一样,会有相关命令。

 

外网要访问内网的IP,需要在内网的路由器上进行映射转发,进入内网路由器。一般都是192.168.1.1,登录后打开转发规则----虚拟服务器,添加新条目。我的配置如下:

如果需要用域名方式来访问内网的svn,需要在客户端设置hosts,如果不需要直接用公网IP,就是不需要设置,这个公网IP就是内网的路由器用来访问外网的IP,可以在百度搜索里搜索IP。

域名方式访问:

1)在/etc/hosts中加入:外网IP svn.6688.cc

2)svn checkout http://svn.6688.cc:81/svn /xxx/xxx ----前面为服务器端目录,后面会本地目录,就是把服务器端的数据导出到本地目录。

IP方式访问:

不用设置hosts,直接svn checkout http://外网IP:81/svn /xxx/xxx

http://blog.sina.com.cn/s/blog_4e0987310101ak1r.html


网页标题:svn服务器
分享URL:http://azwzsj.com/article/pepcic.html