svn详解

=====================================================

前言:献给初学运维的朋友,大家一同进步是我最大的愿望。第一次写博客欢迎大家拍砖。:)

 

svn的作用:是指版本服务器,可以在apache下配置。支付远程访问(外网访问),支持加密传输。远程访问对于不能集中开发的团队来说很重要,随时保持版本同步。

 

Subversion+apache 安装

一、http+svn

1.安装apache subversion

yum install  httpd

yum install  httpd-devel        //用于开发Apache模块

yum install  subversion

yum install  mod_dav_svn   //Subversion与Apache之间的接口(通过它,Apache就可以访问版本库,可以让客户端也使用HTTP的扩展协议 WebDAV/DeltaV进行访问)

 

2.验证svn模块(mod_dav_svn)

查看是否正确安装:是否输出

#ls /etc/httpd/modules | grep svn

mod_authz_svn.so

mod_dav_svn.so

#svn --version

 

3.创建SVN库和项目

#mkdir -p /var/svn/conf             #创建svn配置文件

#svnadmin create /var/svn/test      #创建test库

#svn import /var/www/html/test file:///var/svn/test -m "initial import"    #把文件导入到库

#chown -R apache.apache /var/svn/test

#mv /var/www/html/test /var/www/html/test_bak

#svn checkoutfile:///var/svn/test /var/www/html/test ///xp验证时,out路径为:/svn/test

#cp /var/svn/test/hooks/postcommit.tmpl /var/svn/test/hooks/post-commit                  ///制作test库配和httpd连接置文件。

#chmod 755 post-commit

#vim post-commit 并将里面的所有东西加上注释:               ///只让下面二行起作用

export LANG=zh_CN.UTF-8

svn update file:///var/svn/test /var/www/html/test

 

4.配置httpd

 

创建秘密文件:

#htpasswd -c /var/svn/conf/passwd.conf dony  "第一次加 -c"

#htpasswd /var/svn/conf/passwd.conf svnadmin

 

#vim /etc/httpd/conf.d/subversion.conf   #apache下的SNV配置

LoadModule dav_svn_module modules/mod_dav_svn.so

LoadModule authz_svn_module modules/mod_authz_svn.so

<Location /svn>

DAV svn

SVNParentPath /var/svn

      AuthType Basic

      AuthName "Subversion repostitory"        #SVN版本库

      AuthUserFile /var/svn/conf/passwd.conf   #密码文件的存放地

      AuthzSVNAccessFile /var/svn/conf/authz.conf   #SVN访问文件的存放地

      Require valid-user  #有效用户

</Location>

 

5.修改conf里的配置文件

#vim /var/svn/conf/authz.conf

[groups] #建立两个组,分别是管理员组和开发组,还有连个组上的用户。

admin=svnadmin 

developer=dony

 

[test:/]

@admin=rw

@developer=rw

 

#注意权限,否则出现UTF-8错误

drwxrwxrwx apache apache /var/svn

-rwxr-xr-x 1 apache apache 2062 09-26 14:21 test/hooks/post-commit

这个svn是通过httpd实现的,只要apache启动svn就可以用了。

 

==验证:xp客户端

安装客户端,out好路径。提示密码,新建文件目录。观察在库中数据同步更新 

  

详解 Cento 下安装配置 SVN_SVN 版本控制

详解 Cento 下安装配置 SVN_SVN 版本控制_02

 

详解 Cento 下安装配置 SVN_SVN 版本控制_03

 

 

 ======结束了,乐一会===