首先需要安装svn服务器以及apachet等,相关信息请参照:
http://wiki.ubuntu.org.cn/SubVersion
下面我们将主要介绍如何创建多个仓库,每个仓库单独存放一个项目的文件以及单独存放一个项目权限密码设置。
如:某个出差补助,十七块五的公司,准备对公司上一整套信息化管理系统。什么MES,ERP,HR,CRM......
1.每个项目的所有文件都放在单独的一个SVN仓库里面
2.并对每个仓库分配不同的权限,比如:每个项目都有doc,src,release等目录,分别存放设计文档,项目源代码等不同信息。
项目经理希望每个目录应该有不同的人来访问,比哪doc应该给设计人员分配读写权限,而开发人员只有读取权限等,这个就可以避免无关人员的误操作。
3.并对每个仓库分配不同的用户及认证:每个项目的开发人员肯定都是不一样的,所有每个项目都应该有不同的人员及认证密码,这个好理解 。
那根据公司的需要我们下面开始请如何来实现:
首先在某个目录下面创建这几个仓库,这里我们默认把仓库都建在/home/me/svn下面,通过以下命令完成仓库的创建:
sudo svnadmin create project_name
然后修改该路径下所有文件的权限:
sudo chown -R root:subversion project_name
sudo chmod -R g+rws project_name
下面我们继续设计用户及认证信息,这里添加用户wyang以例:
sudo htpasswd /home/me/svn/project_name/conf/passwd wyang
这个时候需要初始化用户密码相应输入两次密码以后,用户wyang就添加进去了。同过相同方式添加其它用户的认证信息。
完成以后,我们设置项目的权限配置:
sudo vi /home/me/svn/project_name/conf/authz
通过vi打开这个文件后,把文件中的内容全部删除掉,然后添加以下内容[groups]
design = wyang
dev = szhang,sli
[/doc]
@design = rw
@dev = r
[/src]
@design = r
@dev = rw
* = r
其中创建了设计组和开发组,开发组有szhang,sli两人,设计组有wyang一个,设计人员可以读改/doc和/src中的内容。而开发人员可以修改/src中的内容,以及读取/doc中的设计文档。
最后,我们需要修改一下apache的设置信息:
sudo vi /etc/apache2/mods-available/dav_svn.conf
在文件的最后添加以下信息:
<Location /svn/project_name>
DAV svn
SVNPath /home/mes/svn/project_name
AuthType Basic
AuthName "project_name Repository"
AuthUserFile /home/mes/svn/project_name/conf/passwd
AuthzSVNAccessFile /home/mes/svn/project_name/conf/authz
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>
这样就完成一个仓库的配置了,最后重启一下apache,就可以通过http://ip/svn/project_name进行访问了。
sudo /etc/init.d/apache2 restart
然后重复以上的步骤就可以创建其它仓库并为仓库分配权限及认证信息了。
分享到:
相关推荐
2. **借助Apache运行模式**:在这种模式下,SVN仓库通过Apache HTTP服务器提供服务。这使得SVN可以利用Apache的强大功能,如SSL加密、身份验证机制、URL重写等。同时,由于Apache服务器的广泛应用,很多系统管理员对...
在 Debian 环境下,可以将 SVN 仓库创建在多个位置,例如 /usr/local/svn 或 /home/svn。为了简单起见,我们假设 SVN 仓库创建在 /var/svn,並且项目名称为 myproject。 首先,需要创建一个名为 Subversion 的用户...
在Linux服务器上配置多个SVN仓库是管理代码版本和团队协作的重要步骤。下面将详细讲解这一过程。 首先,我们需要在服务器上创建一个用于存放所有仓库的目录,这将作为SVN仓库的根目录。在本例中,我们将该目录设置...
创建和初始化SVN仓库需要使用svnadmin工具,并可能需要设定合适的文件系统权限,确保Apache运行的用户有足够的权限访问仓库。 ### 总结 在CentOS上安装Apache和SVN,并配置SVN使用HTTP访问,需要对Linux下的软件...
允许80端口访问1.5浏览器访问测试2.1安装SVN2.2重启apache服务2.3检查svn模块是否安装上了apache2.4查看svn版本2.5配置SVN仓库2.5.1创建SVN库主目录2.5.2编辑配置文件subversion.conf2.5.3创建/data/svn/passwd.http...
### 安装与部署阿里云CentOS 7.4 上的 SVN 1.10.0 版本 ...通过以上步骤,我们可以在阿里云 CentOS 7.4 上成功安装并部署 SVN 1.10.0 版本,同时配置多个仓库并将其设置为开机自启动,实现高效稳定的版本控制系统。
- **安装Apache服务器并配置SVN**:安装Apache服务器,并配置SVN以支持Web访问。 - **安装Java运行环境和Tomcat**:SVNAdmin需要Java运行环境,因此安装Java SDK,并部署在Tomcat服务器上。 - **初始化svnadmin...
- SVN仓库可以通过设置访问控制列表(ACLs)限制用户权限,例如只读、读写等。 - 可以通过SVN工具设置用户和组权限,以实现对仓库或特定目录的精细控制。 6. **SVN与版本控制系统对比** - 相较于早期的CVS,SVN...
管理员可以通过WebDAV协议提供仓库访问,或者通过SVN命令行工具进行权限管理。仓库可以通过URL定位,团队成员可以通过HTTP、HTTPS或SVN专用协议连接。 5. 版本控制策略: - 分支管理:为了保持主线稳定,通常会在...
在Linux环境中,Subversion(简称svn)是一种...总的来说,离线安装svn是一项涉及多个步骤的任务,需要对Linux系统和软件编译有基础了解。遵循上述步骤并确保所有依赖完整,你便能在无网络环境中顺利安装和配置svn。
现在SVN服务已经运行并可供用户通过SVN客户端进行访问和操作。如果需要,可以通过`systemctl status svnserve`检查服务状态。 总结来说,搭建SVN服务涉及安装SVN软件、创建版本库、配置访问权限以及启动服务。通过...
它允许多个用户同时编辑同一份代码,通过版本控制确保团队间的协同工作顺利进行,避免冲突,并提供了代码的历史版本回溯功能。 1. **SVN服务器设置**:在C#开发环境中,建立SVN服务器是团队协作的第一步。你可以...
安装完成后,我们需要创建一个SVN仓库(repository)。仓库是存储项目文件及其版本历史的地方。可以使用`svnadmin create`命令创建一个新的仓库,然后通过HTTP/HTTPS、FTP或其他协议共享仓库,以便团队成员可以访问...
- **导入项目**:在Myeclipse中,可以通过“文件”>“导入”>“版本控制”>“现有项目到SVN”来导入已有的项目,并关联到SVN仓库。 - **提交与更新**:在Myeclipse中,可以直接对文件进行版本控制操作,如右键点击...
它允许团队成员协同工作,记录每次更改,以便于回滚错误、比较不同版本,并管理多个开发分支。下面我们将深入探讨SVN的创建和配置过程。 1. **安装SVN** 在开始之前,你需要在你的计算机上安装SVN服务器和客户端。...
这通常在服务器上完成,选择一个可自启动的文件夹作为SVN仓库的位置。例如,可以在本地计算机上创建一个名为“svn”的文件夹,然后在这个文件夹内创建新的仓库。仓库名称可以根据项目需求自定义,如“oa”代表Office...
将SVN与Apache结合使用,可以构建一个强大的集中式版本控制系统,允许开发团队通过HTTP或HTTPS协议访问和操作SVN仓库。 Apache与SVN的集成主要依赖于mod_dav_svn模块,这是一个Apache模块,提供了对SVN的WebDAV/...
4. **解决冲突**: 当多个人修改了同一文件时,SVN会标记冲突,需要手动编辑冲突文件,解决冲突后使用`svn resolved`命令告知SVN冲突已解决。 5. **查看状态和历史**: `svn status`(简写为`svn st`)显示工作副本的...
1. **仓库创建与管理**: 学习如何创建 SVN 仓库,设置权限,以及如何备份和恢复数据。 2. **用户与权限控制**: 理解如何使用 SVN 的访问控制列表(ACLs)为不同用户或组分配不同的权限。 3. **URL 重定向与迁移**:...
安装完毕后,启动SVN服务器应用程序,并设定工作目录,这个目录将作为你的SVN仓库所在位置,你可以自由选择一个共享文件夹来存储你的代码库。 接下来,创建一个新的SVN仓库。在SVN服务器管理界面,选择“新建库”...