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
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。