发表于: 2016-05-08 05:59:00

5 871


要求

安装CentOS或Ubuntu

下载SVN服务器,安装后完成配置

启动SVN服务,配置好权限,创建一个用户(及密码)

本地下载SVN客户端,提交一个*.txt文件,在另一个文件夹里Update,并查看文件是否上传

普通用户有浏览权限,无读写权限

SVN服务器可以外网访问

 

步骤

  1. 安装VMware-workstation-full-12.0.0-2985596
  2. 安装CentOS-7-x86_64-Everything-1511
    1. 安装方式选择最小化安装
    2. 网络类型选择桥接
    3. 启动网络服务:service       restart network
    4. 查询ifconfig相关程序包:yum       search ifconfig
    5. 安装网络服务:yum       install  net-tools.x86_64
    6. 安装vim编辑器:yum       install vim-*
  3. 安装apacheyum      install httpd
  4. 禁用系统自带firewalld
    1. systemctl stop firewalld
    2. systemctl mask       firewalld
  5. 关闭selinuxvim      /etc/selinux/config

#SELINUX=enforcing             #注释掉

#SELINUXTYPE=targeted     #注释掉

SELINUX=disabled                   #增加

  1. 安装并启动iptables
    1. yum       install iptables-severices
    2. systemctl       enable iptables
  2. 安装SVN服务器
    1. 安装svnyum install subversion
    2. 创建svn版本库:
      1. 创建svn数据目录:mkdir /var/svn
      2. 创建版本库:svnadmin        create /var/svn/projetc/
      3. 修改项目库所属组:chown        -R apache:apache /var/svn/project/
      4. 拷贝authz文件:cp        /var/svn/project/conf/authz /var/svn/authz
      5. 创建passwd文件:vim        /var/svn/passwd
      6. 添加远程登陆用户账号:htpasswd        /var/svn/passwd user-name
  3. 配置相关文件
    1. 进入配置文件目录:cd /var/svn/
    2. 配置svn权限控制配置文件:vim       authz

[groups]

admin = admin          #admin为用户组,等号之后的admin为用户

user = user

guest = guest

 

[/]

@admin = rw           #表示admin组对根目录有读写权限,r为读,w为写

 

[project:/]                  #表示根目录(/var/svn/project)

@user = rw

@guest = r

* =                             #除以上组别,其余无任何权限

  1. 配置svn配置文件:vim /var/svn/project/conf/svnserve.conf

[general]

anon-access = none                #控制非鉴权用户访问版本库的权限

auth-access = write                 #控制鉴权用户访问版本库的权限

password-db = passwd           #指定用户名口令文件名

authz-db = authz                     #指定权限配置文件名

realm = project                        #指定版本库的认证域,即在登录时提示的认证域名称

  1. 添加防火墙规则:vim /etc/sysconfig/iptables
    1. 添加:-A INPUT -p tcp -m state --state NEW -m tcp --dport 3690 -j ACCEPT
    2. 重启防火墙:service       iptables restart

#############################################################################################

  1. 修改apache服务器配置文件:vim /etc/httpd/conf/httpd.conf

<Location /svn/project>                           #在location标记中填写项目库的相对路径

 DAV svn   

 SVNPath /var/svn/project                        #版本仓库绝对路径

 AuthType Basic

 AuthName "svn for project"

 AuthUserFile /etc/httpd/conf/svnpasswd                    #存放加密过的用户名和密码的地方

 AuthzSVNAccessFile /var/svn/project/conf/authz    #svn权限访问控制设置文件可以新建

 Satisfy all

 Require valid-user                                           //用户登录要求验证

 </Location>

  1. 重启svnapache服务器
    1. ps -aux | grep svn
    2. kill -9 svnID
    3. svnserve       -d -r /var/svn --listen-port  3690
    4. systemctl  restart httpd.service

#############################################################################################

# 重启apache服务失败

# 测试失败

#############################################################################################

# 2016-05-08 05:53

#############################################################################################

  1. apache配置文件中加载相应模块:vim /etc/httpd/conf/httpd.conf

LoadModule dav_module            modules/mod_dav.so

LoadModule dav_svn_module     modules/mod_dav_svn.so

  1. 路由器设置好端口映射

电信将80端口封了,故在路由器将14159端口映射至192.168.1.108:80

  1. 下载并安装TortoiseSVN-1.9.4.27285-x64-svn-1.9.4.msi
    1. 在某目录下右键空白处,点击SVN Checkout
    2. 填入http://公网IP:14159/svn,填入相对应的目录test1
    3. test1中建立一个文档test.txt,并输入字符,保存,退出
    4. 右键文件夹test1,选择SVN       Commit,选择test.txt,上传
    5. 在某目录下右键空白处,点击SVN       Checkout,填入目录test2,下载得到对应文件test.txt
    6. 在目录2中,对test.txt文件输入字符,保存,退出
    7. 右键目录2test.txt文件,选择SVN       UpdateSVN Commit
    8. 右键目录1test.txt文件,选择SVN       Update,查看文件内容,已更新
  2. 浏览器测试:http://公网IP:14159/svn

输入用户名、密码后,可查看文件及其更新版本。

测试成功

 

结束!

#############################################################################################

# 2016-05-09 01:49

#############################################################################################

 



返回列表 返回列表
评论

    分享到