在Linux系统中搭建svn服务所需要用到的软件叫做subversion,可以通过yum来进行安装,如图


linux SVN 检出仓库_svn

安装好软件后第一件事就是创建一个仓库目录

[root@server1 ~]# mkdir /svn
 使用svn自带命令建立仓库
 [root@server1 ~]# svnadmin create /svn

进入该仓库,可以看到该目录下生成了一些目录和文件


linux SVN 检出仓库_配置文件_02

其他文件暂且不用理会,只需要对以下几个文件做编辑


linux SVN 检出仓库_linux_03

编辑svnserve.conf主配置文件,对以下几项修改如下

[general]
 anon-access = none    #取消匿名访问
 auth-access = write    #授权用户有可写权限
 password-db = passwd    #指定用户配置文件,后面会用到
 authz-db = authz    #指定权限配置文件,后面会用到

编辑passwd文件,建立svn客户端用户以及密码,一行一个,这里建立了两个用户


linux SVN 检出仓库_linux SVN 检出仓库_04

编辑authz文件,指定SVN仓库目录,这[/]代表根目录,以及每个用户的权限,这里均为可读可写


linux SVN 检出仓库_svn_05

启动SVN服务,-d表示后台运行svn服务,-r是指定svn目录;然后执行了netstat检查端口,默认监听在3690端口上


linux SVN 检出仓库_配置文件_06

在Windows使用SVN服务的话,需要下载一个TortoiseSVN客户端软件,安装好软件后在本地电脑创建一个工作目录,右键该目录选择checkout,checkout就是把SVN服务器上的文件下载到本地工作目录内的操作


linux SVN 检出仓库_linux_07

在对话框里输入SVN服务器的地址以及需要存放文件的目录,然后点击ok按钮,之后会要求输入用户名密码,这个时候就输入在passwd里设置的信息即可


linux SVN 检出仓库_svn_08


linux SVN 检出仓库_svn_09

登录成功后便可以在该工作目录里进行编辑或创建文件,操作完成后对该目录右键,选择check commit提交,这个操作等于是上传到SVN服务器


linux SVN 检出仓库_linux_10

现在切换到Linux使用客户端测试,使用Linux的SVN命令进行checkout操作,登录后可以看到Windows上创建的文件已经出现


linux SVN 检出仓库_linux SVN 检出仓库_11

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的基本操作就全部演示完毕!


linux SVN 检出仓库_配置文件_12

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为进程号