svn服务器安装在centos7系统平台

  

当今用于版本控制的软件程序主要的有svn和git,其它软件咱不熟悉,今天记录下搭建svn服务器和svn客户端使用;

  

使用环境:
  

  

虚拟机为centos7系统,svn服务器安装在centos7系统平台上,svn客户端分别在windows7多和centos7系统上使用;

  

1,安装svn服务器:

  
 <代码>]# yum安装subversion  
  

2,配置svn服务器:
  

  

建立svn版本库根目录及相关目录即svndata及密码权限命令svnpasswd;

  
 <代码>]# mkdir - p/应用程序/{svndata, svnpasswd}
  
  svndata目录:作为存放svn的根目录;
  svnpasswd目录:作为存放登录svn的用户和密码; 
  

3,启动svn服务:

  
 <代码>]# svnserve - d - r/应用程序/svndata/参数:
  - d:表示后台运行守护模式;
  - r:表示svn服务的根目录;
  
  检测svn端口3690是否已经监听:
  netstat -lntup | grep 3690  
  

4,建立版本库:
  在/应用程序/svndata/目录下,创建项目sadoc:

  
 <代码>]# svnadmin创建/应用程序/svndata/sadoc  
  

会自动创建出一系列固定的目录:

  
 <代码>]#树/应用程序/svndata sadoc  
  

/应用程序/svndata sadoc
  ├──参看
  │,,├──authz
  │,,├──passwd
  │,,└──svnserve。参看
  ├──db
  │,,├──当前
  │,,├──格式
  │,,├──fsf。参看
  │,,├──fs-type
  │,,├──min-unpacked-rev
  │,,├──revprops
  │,,│,,└──0
  │,,│,,└──0
  │,,├──转速
  │,,│,,└──0
  │,,│,,└──0
  │,,├──交易
  │,,├──txn-current
  │,,├──txn-current-lock
  │,,├──txn-protorevs
  │,,├──uuid
  │,,└──写锁
  ├──格式
  ├──钩子
  │,,├──post-commit。tmpl
  │,,├──post-lock。tmpl
  │,,├──post-revprop-change。tmpl
  │,,├──post-unlock。tmpl
  │,,├──未雨绸缪。tmpl
  │,,├──pre-lock。tmpl
  │,,├──pre-revprop-change。tmpl
  │,,├──pre-unlock。tmpl
  │,,└──start-commit。tmpl
  ├──锁
  │,,├──db。锁
  │,,└──db-logs。锁
  └──固定

  
 <代码>主要目录说明:
  参看目录:主要是配置文件,登录用户,密码认证;
  钩子目录:主要是svn的钩子脚本模板,使用时去掉.tmpl后缀即可,钩子脚本实际上就是代码提交前后,可以分别执行的脚本,脚本可用perl、壳牌、python等语言编写,该目录里面脚本文件名代表提交代码执行的不同时机,如提交代码前执行的脚本未雨绸缪,提交代码后执行的脚本post-commit,更多详情自行学习; 
  

5,修改配置文件:

  
 <代码>]# vim/应用程序/svndata/sadoc/conf/svnserve.conf
  anon-access=没有
  #不允许匿名访问,读为允许匿名访问;
  
  auth-access=写
  #允许可写;
  
  password-db=/应用程序/svnpasswd/passwd
  #密码数据库
  
  authz-db=/应用程序/svnpasswd/authz
  #控制权限数据库代码 
  

注意:配置文件必须顶格写;

  

把用户和密码文件放到自定义的目录中:

  
 <代码>]# cp authz passwd/应用程序/svnpasswd/ 
  

改权限:

  
 <代码>]# chmod 700/应用程序/svnpasswd/*  
  

配置passwd文件:

  
 <代码>[用户]
  卑劣的=oldboysecret
  测试=testsecret
  test1=test1secret  
  

passwd配置文件说明:
  格式为:svn账号=svn密码
  账号和密码可随意指定;

  

配置authz:

  
 <代码>(集团)
  #定义组信息,注意:用户账号在密码里;
  test1 ett_sa=卑劣
  ett_wangguan=测试
  (sadoc:/)
  @ett_sa=rw
  @ett_wangguan=r
  代码测试=r  之前
  

authz配置文件说明:
  

  

1。权限配置文件中出现的用户必须已经在用户配置文件中定义。
  2.对权限配置文件的修改立即生效,不必重启svn。
  3.一个用户组可包含多个用户,用户间用逗号分隔;
  4.版本库目录格式:
  [& lt;版本库祝辞://项目目录]

svn服务器安装在centos7系统平台