ts7758258 发表于 2018-11-26 09:55:15

linux下svn服务器端+apache安装文档(转)

  1.下载subversion和apache的最新src包
  2. 新建一个用户:svnroot ,以下操作非特别说明皆为root用户操作
  #groupadd svn
  #useradd svnroot -g svn
  #passwd svnroot
  3. 编译安装httpd:
  //解压apache2安装包
  # tar xvzf httpd-2.2.3.tar.tar
  //进入解压后的目录
  # cd httpd-2.2.3
  //配置apache安装
  # ./configure --enable-dav --enable-so --prefix=/usr/local/apache2/
  # make
  //安装
  # make install
  //启动apache服务
  # /usr/local/apache2/bin/apachectl start
  //打开浏览器http://localhost/如果有测试页"It works!"出现则证明已经安装成功。
  4. 安装Subversion
  //解压SubVersion安装包
  # tar xvzf Subversion-1.4.0.tar.gz
  //进入解压后的目录
  # cd Subversion-1.4.0
  //配置subversion安装
  #./configure --with-apxs=/usr/local/apache2/bin/apxs --prefix=/usr/local/subversion --with-apr=/usr/local/apache2 --with-apr-util=/usr/local/apache2 --with-ssl --with-zlib --enable-maintainer-mode
  # make
  //安装
  # make install
  //创建库文件所在的目录 (svnroot用户进行下面的操作)
  # mkdir /home/svnroot/repository
  //创建仓库"test"
  # /usr/local/subversion/bin/svnadmin create /home/svnroot/repository/test
  //查看svn是否安装成功
  # /usr/local/subversion/bin/svnadmin --version
  //不让其他人有该目录的权限
  # chmod 700 /home/svnroot/repository
  (svnroot用户操作结束)
  5. 修改Apache配置文件
  # vi /usr/local/apache2/conf/httpd.conf
  //找到下列语句,如果没有则自行添加
  LoadModule dav_svn_module modules/mod_dav_svn.so
  LoadModule authz_svn_module modules/mod_authz_svn.so
  //在后面添加
  
  DAV svn
  SVNParentPath /home/svnroot/repository/ //svn父目录
  AuthzSVNAccessFile /home/svnroot/repository/authz.conf //权限配置文件
  AuthType Basic //连接类型设置
  AuthName "Subversion.zoneyump" //连接框提示
  AuthUserFile /home/svnroot/repository/authfile //用户配置文件
  Require valid-user //采用何种认证
  
  //重启apache
  # /usr/local/apache2/bin/apachectl restart
  //打开浏览器访问http://localhost/svn/test/,如果有东西显示就说明成功。
  6. 权限管理
  1)增加用户
  # htpasswd -c /home/svnroot/repository/authfile 用户名
  //第一次设置用户时使用-c表示新建一个用户文件。回车后输入用户密码,完成对用户的增加
  # htpasswd /home/svnroot/repository/authfile 用户名(加入新的用户,就不用-c了)
  2)权限分配
  # vi /home/svnroot/repository/authz.conf
  
  admin=useradmin
  devteamcs = useradmin,user1,user2//这里定义了一个用户组
  [/]//对所有的项目,所有的用户都有读权限,admin用户有读写权限
  @admin = rw
  * = r
  //对test项目,
  @devteamcs = rw
  // 在 /usr/local/apache2/conf/httpd.conf 文件中配置,找到文件中的这两行:
  User daemon
  Group daemon
  // 将daemon改为svnroot,组也做相应更改,让apache进程以svnroot的身份运行
  //改完后是这个样子
  User svnroot
  Group svn
  //重启apache
  # /usr/local/apache2/bin/apachectl restart
  访问http://localhost/svn/test ,现在需要身份验证,且通过验证后应该可以看到信息
  补充:在xp的环境下,如果你运行着卡巴斯基,可能会导致无法访问svn,通常会报400 Bad Request错误
  解决办法是:进入卡巴斯基的设置-->网络设置--->端口设置,然后从端口列表中去掉80端口即可
  再次补充:eclipse有svn的插件,subclipse,安装路径为:http://subclipse.tigris.org/update
  其他相关:
  svn中文站,包含所有源码和文档下载:http://www.subversion.org.cn/
  转自:http://guguaiying.vcmblog.com/archives/2007/571575.html

页: [1]
查看完整版本: linux下svn服务器端+apache安装文档(转)