基于svn的团队文档管理

环境:

  • centos7
  • svn # subversion
  • ldap # 接入现有的统一认证接口
  • lvm # 增加虚拟机逻辑卷磁盘空间
  • apache # 扩展svn模块

openldap

http://list.attacker.club/scripts/shell/ServicesDeployment/openldap/openldap-install.sh

svn

服务部署

yum -y install subversion

mkdir  /home/svn
svnserve -d -r /home/svn         # 启动svn服务


svnadmin create /home/svn/product
svnadmin create /home/svn/design
svnadmin create /home/svn/develop
svnadmin create /home/svn/test
svnadmin create /home/svn/ops
# 创建研发部门各团队

chown apache.apache -R /home/svn/ #文件夹授权

svn授权策略

/home/svn/authz

[groups]
admin=jingjing,maxxx
dev=wangxxx
test=yuxxxx
des=tanxxx


[/]
@admin = rw

[product:/]
@dev = r

[develop:/]
@dev = rw

[test:/]
@test = rw
@dev = r

apache

安装Apache

yum -y install mod_ldap httpd # ldap模块
systemctl enable httpd && systemctl start httpd

httpd配置文件

cp /etc/httpd/conf.modules.d/10-subversion.conf /etc/httpd/conf.d/subversion.conf
# subversion.conf模板

/etc/httpd/conf.d/subversion.conf

LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so
LoadModule dontdothat_module  modules/mod_dontdothat.so

<Location />
    DAV svn
    SVNParentPath /home/svn
    SVNListParentPath On
    AuthzSVNAccessFile /home/svn/authz

    AuthBasicProvider ldap
    AuthType Basic
    AuthName "Subversion repository"
    AuthLDAPURL "ldap://47.99.66.xxx:389/dc=ops,dc=net?uid?sub?(objectClass=*)"
    AuthLDAPBindDN "cn=root,dc=ops,dc=net"
    AuthLDAPBindPassword "xxxxxx"
    Require valid-user

</Location>

浏览器访问 - 集合(根)

http://10.0.1.111/ ip或者域名

svn配置自己的仓库

右键 checkout 自己所在的版本仓库

添加和删除

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券