几天来配置svn的记录
工作背景:
公司内部要对原有的svn进行重新的管理,同时希望将原来使用cvs,vss等管理工具统一转移到svn的管理中.同时因为原来svn的管理方式就是通过最简单的apache+svn通过 apache 的htpasswd生成md5加密的文件对人员进行管理,权限也是通过文件形式进行管理.
存在问题:
现在存在的问题有2点.
第一,使用原来的管理方式,对人员的管理不是很方便(因为公司内部svn用户名都是使用员工号码.这样管理起来比较麻烦.无论是在录入,管理,还是查询的时候,管理员都要借助另外的人员管理系统.,)
第二,由于svn的管理人员不是专业的管理人员.所以在添加svn用户,分配权限的时候由于操作的不规范.就经常的导致svn崩溃.公司的工作效率底下(后来查找原因是因为在分派中文权限utf8字符集的问题)
公司的意见:
所以公司决定趁着这次对svn的统一整理将这些问题统一的解决.
查找了些网上的资料.认为对于上面的问题完全可以解决.
第一个问题,我们可以使用apache中集成的mysql认证管理模块将人员管理起来,同时还可以将公司人力资源的系统管理结合起来,完成一个人员的管理系统.(公司内部还有一些内部使用的系统,比如需求人员用的需求管理工具.通过这个mysql数据库表完成对所有的内部系统进行人员管理)
第二个问题,决定找一个第三方的图形界面工具来完成这项任务.最开始的时候打算通过对mysql的人员和权限管理,以mysql数据库为基础.通过使用java,ruby的语言.进行开发.
在后来的实践中,遇到了一些问题.没有完全象我想的哪么简单.于是svnmanager出现了(现在还有实现这个功能..正在努力.~~~~(>_<)~~~~ ).
开始工作:
按照 http://aone.iteye.com/blog/97352 的配置方法.很容易的完成了上面的配置.当然也发生了一些小问题.
第一个问题.
我使用的是apache2.26的版本.使用svn1.4的mod_authz_svn.so和mod_dav_svn.so出现了版本不兼容.我将svn服务器端升级了版本.使用的是 svn1.4.6.重启apacheè通过
第二个问题.
按照上面的配置.全部完成.在最后测试的时候,使用数据库里的svn用户登陆.老是失败.于是我也产生了对svn用户登陆的密码是不是md5加密格式的怀疑.将原来的md5的密码复制到数据库中.还是失败.最后查看apache的error.log发现了
” Client does not support authentication protocol requested by server; consider upgrad”
So.更换数据库到更高的版本.虽然我使用的是mysql5.但是还是决定将小版本从18升级到了22.重启apache重试,还是一样的.
最后在晚上找到了问题的原因.通过下面的sql
“set password for 'root'@'localhost' =old_password('root');”
Root为用户名,localhost是mysql服务器所在ip.最后的root是数据库的密码.
问题è通过
上面的配置总算是通过了.我最后将权限控制的文件也加上
AuthzSVNAccessFile “权限文件地址”
通过测试.是可以控制用户的权限.可是当用户没有权限的时候.出现了 403.不知道这个提示能不能通过我们来设置.因为这样的提示不是很友好.和错误的提示是一样的.很容易让人误解.最好是可以设置.比如说”您当前没有权限,请找管理员核实您的权限!”给人一个比较友好的提示.
安装svnmananger 参照
Windows XP(SP2)下Svnmanager和Bugfree安装指南
大家可以去google上下载.
虽然按照上面的配置.但是最后还是没有实现.待我慢慢的研究…
通过这段时间的研究.我总结了下以上对svn的配置(也不知道对不对,欢迎大家批评.).
配置apache+svn+mysql 主要分为3个步骤
第一.通过apache中的webdav方式执行svn的资源库.
# SVNParentPath指向svn资源库的上一级目录# SVNPath "E:/svndemo/repository"
# SVNPath指向svn资源库目录.
第二.使用 apache htpasswd生成md5方式加密的密码文件.通过AuthUserFile(密码文件)和AuthUserFile(目录权限)来控制.
第三.加上mysql代替AuthUserFile文件.
Require valid-user
AuthMySQLHost localhost
附件中加上 apache配置的 httpd.conf以及权限认证的文件auth
分享到:
相关推荐
Eclipse是一款广受欢迎的Java开发集成环境,而SVN(Subversion)则...总的来说,Eclipse中的SVN配置是团队开发中不可或缺的一部分,通过合理配置和使用,可以大大提高代码管理的效率,确保项目版本的一致性和可追溯性。
Myeclipse6.5 svn配置,免费资源,仅供参考!
SVN配置及使用方案,包括详细的配置和使用方案
SVN(Subversion)是一种广泛使用的版本控制系统,用于管理和跟踪文件和...总的来说,SVN作为团队开发的配置管理工具,通过其强大的版本控制功能和便捷的协作方式,能够有效地提升开发效率,保障项目的稳定性和一致性。
### SVN配置管理详解 #### 一、概述 版本控制系统(Version Control System,VCS)是软件开发中不可或缺的一部分,它帮助团队有效地管理源代码的变化历史。Subversion(SVN)作为一款集中式的版本控制系统,被广泛...
配置SVN服务器涉及到安装SVN服务端软件,创建版本库,设置权限管理,以及配置SSH(Secure Shell)以实现安全的远程访问。以下是配置SVN服务器的具体步骤: 1. **创建SVN版本库用户和组**: - 创建一个独立的用户,...
在本场景中,"svn配置文件"指的是用于配置SVN服务器的文件集合,这些文件通常包括服务器的设置、用户权限、仓库路径等关键信息。在搭建SVN服务器时,正确配置这些文件是确保系统安全、稳定运行的重要步骤。 1. **...
在这个"svn配置"主题中,我们将深入探讨如何配置SVN服务器、客户端以及进行日常的版本控制操作。 1. **安装SVN服务器**: - 对于Windows用户,可以使用VisualSVN Server,提供图形化的安装和管理界面。 - 对于...
【MyEclipse SVN配置】是关于在MyEclipse集成开发环境中设置版本控制系统Subversion(SVN)的过程。Subversion是一个广泛使用的开源版本控制系统,用于跟踪文件和目录的更改,便于团队协作和项目管理。在MyEclipse中...
【MyEclipse SVN配置文件详解】 在软件开发过程中,版本控制系统是不可或缺的工具,Subversion(SVN)作为其中的一员,被广泛应用于协同开发和代码管理。MyEclipse,一个强大的Java集成开发环境,集成了SVN插件,...
运行Subversion服务器需要首先要建立一个版本库(Repository),版本库可以看作是服务器上集中存放和管理数据的地方。在安装客户端时默认已经创建了一个版本库,可以直接用这个库,或是根据需要重新建立一个库。
本指南将深入探讨如何在Linux环境中配置SVN服务器,以及如何进行权限管理,确保团队成员能按照预设的角色和职责进行协作。 首先,我们需要安装SVN。在大多数Linux发行版中,可以通过包管理器完成此操作。例如,在...
在使用SVN的过程中,用户通常会在本地计算机上创建SVN配置文件,这些文件存储了与SVN仓库的连接信息和其他设置。然而,有时可能需要清理或删除这些配置,特别是在解决权限问题、更换工作环境或者卸载SVN客户端时。 ...
【SVN配置文件】是指在Subversion(简称SVN)版本控制系统中,对服务器和客户端进行设置的文件,用于管理代码仓库、用户权限以及通信协议等。本文将详细介绍如何使用VisualSVN Server来配置和使用SVN服务。 **1. ...
【SVN配置world文档】 在IT行业中,版本控制系统是项目管理的重要工具,Subversion(简称SVN)就是其中的一种。本篇文章将详细讲解如何在Visual Studio(VS)环境中配置和使用SVN,以及对比SVN与Visual SourceSafe...
### SVN配置管理使用教程知识点详解 #### 一、SVN简介 **SVN**(Subversion)是一种开源的版本控制系统,它的出现旨在解决软件开发过程中的版本控制难题。SVN继承了早期版本控制系统**CVS**(Concurrent Versions ...