#svn搭建 管理代码
Apache Subversion 通常被缩写成 SVN,是一个开放源代码的版本控制系统,Subversion 在 2000 年由 CollabNet Inc 开发,现在发展成为 Apache 软件基金会的一个项目,同样是一个丰富的开发者和用户社区的一部分。
SVN相对于的RCS、CVS,采用了分支管理系统,它的设计目标就是取代CVS。互联网上免费的版本控制服务多基于Subversion。
# apache 也可以用nginx lighttpd 代替
###环境:
centos7.3
###配置实例
安装svn
yum install httpd subversion mod_dav_svn -y #yum安装
vi /etc/httpd/conf.modules.d/10-subversion.conf #centos 6* 路径为/etc/httpd/conf.d/subversion.conf
Alias /svn /var/www/svn #svn仓库
<Location /svn>
DAV svn
SVNParentPath /var/www/svn/
AuthType Basic
AuthName "SVN Repository"
AuthUserFile /etc/svn-auth-accounts 用户密码路径
Require valid-user
</Location>
添加虚拟用户
htpasswd -cm /etc/svn-auth-accounts wanbo #添加虚拟用户
#-c选项创建 /etc/svn-auth-accounts文件 创建第二个用户得时候要去掉-c选项 否则会覆盖原有文件。
配置svn仓库 创建apache虚拟目录
mkdir /var/www/svn # 创建svn仓库文件
cd /var/www/svn
svnadmin create repo #创建仓库
修改所有者和所属组
chown -R apache:apache /var/www/svn/repo
chmod -R 755 /var/www/svn/repo
设置selinux规则为读写上下文 并启动httpd
chcon -R -t httpd_sys_rw_content_t /var/www/svn #若开启了selinux 则需修改
#查看selinux安全上下文 ll -dZ filename #Z大写
systemctl start httpd
systemctl enable httpd
为安全起见 配置svnsever配置文件禁止匿名用户访问svn仓库
vi /var/www/svn/repo/conf/svnserve.conf
auth-access = none
authz-db = authz #模块生效
配置好后启动svn服务
项目导入测试
mkdir wanbo
cd wanbo/
touch test.html #代码
svn把名为wanbo测试项目导入仓库
svn import -m "hahaha" /root/wanbo file:///var/www/svn/repo/wanbo
#-m选项 是备注 根据自己情况随意填写
测试
浏览器输入http://192.168.1.22/svn/repo/ 然后输入自己配置得虚拟用户登录 wanbo password
下载svn客户端 配置登录
下载地址:https://tortoisesvn.net/downloads.html, 页面里有语言包补丁的下载链接。