在Linux系统中搭建svn服务所需要用到的软件叫做subversion,可以通过yum来进行安装,如图
安装好软件后第一件事就是创建一个仓库目录
[root@server1 ~]# mkdir /svn
使用svn自带命令建立仓库
[root@server1 ~]# svnadmin create /svn
进入该仓库,可以看到该目录下生成了一些目录和文件
其他文件暂且不用理会,只需要对以下几个文件做编辑
编辑svnserve.conf主配置文件,对以下几项修改如下
[general]
anon-access = none #取消匿名访问
auth-access = write #授权用户有可写权限
password-db = passwd #指定用户配置文件,后面会用到
authz-db = authz #指定权限配置文件,后面会用到
编辑passwd文件,建立svn客户端用户以及密码,一行一个,这里建立了两个用户
编辑authz文件,指定SVN仓库目录,这[/]代表根目录,以及每个用户的权限,这里均为可读可写
启动SVN服务,-d表示后台运行svn服务,-r是指定svn目录;然后执行了netstat检查端口,默认监听在3690端口上
在Windows使用SVN服务的话,需要下载一个TortoiseSVN客户端软件,安装好软件后在本地电脑创建一个工作目录,右键该目录选择checkout,checkout就是把SVN服务器上的文件下载到本地工作目录内的操作
在对话框里输入SVN服务器的地址以及需要存放文件的目录,然后点击ok按钮,之后会要求输入用户名密码,这个时候就输入在passwd里设置的信息即可
登录成功后便可以在该工作目录里进行编辑或创建文件,操作完成后对该目录右键,选择check commit提交,这个操作等于是上传到SVN服务器
现在切换到Linux使用客户端测试,使用Linux的SVN命令进行checkout操作,登录后可以看到Windows上创建的文件已经出现
svn checkout svn://192.168.36.100 /svnwork/ --username=tanglu --password=123456789
在Linux上创建一个文件后提交到SVN
[root@server1 svnwork]# svn add linux.txt #用add把新增的文件添加进去
A linux.txt
[root@server1 svnwork]# svn commit -m "linux test" #commit正式提交
Adding linux.txt
Transmitting file data .
Committed revision 2. #版本号发生了变化
再回到Windows上查看下,可以看到版本更新,而且还可以通过show log来查看每次文件的变动及操作人员以及文件前后发生的具体变化,到此SVN的基本操作就全部演示完毕!
1,启动SVN
sudo svnserve -d -r /home/data/svn/
其中 -d 表示守护进程, -r 表示在后台执行
/home/data/svn/ 为svn的安装目录
2,关闭SVN
这里采取linux杀死进程的方式处理的
ps -ef|grep svnserve
root 4967 1 0 Aug23 ? 00:00:00 svnserve -d -r repository/
这里 kill -9 4967杀死进程, 此4967为进程号