svn:项目代码的版本管理工具,作为运维人员必须掌握的内容。
模式:C/S 默认端口:3690
本文分两部分,一部分svn单独运行,一部分svn+apache运行。
安装版本:subversion-1.6.11-9.el6_4.x86_64
svn服务器单独运行
rpm -qa | grep subversion //查看系统中是否已经安装
rpm -e packagename //如果有删除,有依赖关系,加上--nodeps强力删除
yum install -y subversion //yum方式安装,也可以到网站下载需要的版本
mkdir /var/sub
svnadmin create /var/sub/svn1 //创建一个版本库,svnadmin是服务端命令,svn是客户端命令
vim/var/sub/svn1/conf/svnserve.conf //修改配置文件,将以下内容打开并取消前面的空格
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz
realm = svn1
vim/var/sub/svn1/conf/passwd //修改此文件,在[users]下的用户名和密码
test = 123456
user1 = 123456
user2 = 123456
vim/var/sub/svn1/conf/authz //修改此文件,设置用户或者组的权限,在最后添加
admin = test
group = user1,user2 //此处admin和group是组名,可以自行定义
[/] //此处的/代表svn1
test = rw
@group = r
svnserve -d -r/var/sub/ //启动服务,-d指后台运行,-r指定根目录
ps -aux | grepsvn //查看服务是否启动成功
netstate -antup |grep 3690 //查看端口,默认是3690
本地客户端导入以及取出:
mkdir /test_sub //创建测试目录
cp /etc/passwd /test_sub/ //拷贝数据,也可以是其他各式代码目录等等
svn import /test_sub/ file:///var/sub/svn1/ -m 'svn1 v1' //import导入,-m表示说明
svn checkout file:///var/sub/svn1/ dir1 //checkout取出数据,并在当前路径下生成dir1目录
本地客户端提交修改:
svn commit dir/a.txt-m 'add a.txt' //提交修改
注:截止目前都是在本地操作,可以使用file协议,如果是在远端,需要使用svn协议!
测试远程客户端:svn checkout svn://192.168.1.132/svn1 file //远端使用svn协议
至此,svn版本控制服务器安装结束,后期更新svn+apache,使用http协议对svn进行操作!