`
tsmood
  • 浏览: 43679 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

Subversion搭建版本控制系统

阅读更多
前言
如何更有效、更安全地管理程序源代码,这对每一位程序员都是至关重要的,当然我也不例外,于是Subversion就成了我管理所有代码及文件的重要工具。

安装Subversion
Debian etch中提供的是1.4.2,目前最新版本是1.4.3
apt-get install subversion
Windows版本Subversion安装程序下载请点击此处

创建版本库
subversion提供了两种数据存储方式:BerkeleyDB和FSFS
创建svn_server版本库
mkdir /home/tony/svn_server
svnadmin create --fs-type fsfs /home/tony/svn_server #指定数据存储为FSFS,如果要指定BerkeleyDB,则将fsfs替换为bdb
给所有用户写的权限,不然apache做服务器后客户端用户提交时会出问题-_-
chmod a+w /home/tony/svn_server

添加项目
创建临时项目tsmood
mkdir /home/tony/tmp/tsmood
cd /home/tony/tmp/tsmood
我在这个项目中创建了三个顶级子目录,分别是branches、tags和trunk
mkdir branches tags trunk
然后导入这个项目到svn_server版本库
svn import /home/tony/tmp file:///home/tony/svn_server -m'initial import'

查看版本库
svn list --verbose file:///home/tony/svn_server
svnlook info /home/tony/svn_server #查看最新修订版本的信息 --revision可以指定版本号
svnlook tree /home/tony/svn_server --show-id #显示版本库的具体树形结构

Subversion与Apache Http Server相互结合的服务器配置
用户可以通过Http协议来访问版本库,先要安装mod_dav_svn模块
apt-get install libapache2-svn
配置Apache的/etc/apache2/httpd.conf文件,让Apache在启动的时加载上述模块
vi /etc/apache2/httpd.conf
添加以下内容
LoadModule dav_module /usr/lib/apache2/modules/mod_dav.so
LoadModule dav_svn_module /usr/lib/apache2/modules/mod_dav_svn.so
<Location /svn_server>
DAV svn
SVNPath /home/tony/svn_server
</Location>

通过Apache进行基本的权限配置
htpasswd -c /etc/apache2/svn_server_passwd tony #(参数-c 可以强制建立新的密码文件)
会要你输入密码,并要求重新输入以进行确认
New password: mypassword
Re-type new password: mypassword
Adding password for user tony
修改/etc/apache2/httpd.conf
vi /etc/apache2/httpd.conf
在<Location></Location>中加入以下内容
AuthType Basic
AuthName "svn server"
AuthUserFile /etc/apache2/svn_server_passwd
Require user tony

重新启动Apache2
/etc/init.d/apache2 stop
/etc/init.d/apache2 start
打开浏览器输入http://serverIP/svn_server

客户端调用
配置完成后,我就可以在世界上任何可以上网的地方来管理和维护自己的源代码了。
svn co http://serverIP/svn_server/tsmood /home/tony/svn_client/tsmood
分享到:
评论

相关推荐

    用 Apache 和 Subversion 搭建安全的版本控制环境

    相比于早期流行的版本控制系统 CVS,Subversion 提供了许多改进和增强功能,包括目录版本化、原子提交、版本化的元数据、更有效的分支和标签机制。 **目录版本化**:在 Subversion 中,不仅文件被版本化,目录本身...

    linux下subversion+apache server搭建

    Subversion是一个开源的版本控制系统,用于跟踪文件和目录的变更,便于团队协作开发。Apache是常用的Web服务器,通过与Subversion集成,可以提供WebDAV协议来访问版本库,实现远程访问和版本控制。 **1. Subversion...

    使用subversion进行版本控制

    Subversion(简称SVN)是一种集中式的版本控制系统,用于管理软件开发中的源代码、文档以及其他类型的数据。它通过跟踪不同版本之间的更改来帮助团队协作,并确保每个成员都能访问到最新的代码或文档。 #### 二、...

    xp+apache2.2+subversion1.6.17搭建版本控制服务器

    在IT行业中,版本控制系统是团队协作开发不可或缺的工具,它能帮助开发者跟踪代码变更,管理项目历史,并确保团队成员间的一致性。本教程将详细讲解如何在Windows XP操作系统上,利用Apache2.2和Subversion 1.6.17...

    Subversion服务器搭建

    Subversion(简称SVN)是一种版本控制系统,用于跟踪文件和目录的更改,便于多人协作开发。在本文中,我们将深入探讨如何搭建Subversion服务器,以便团队成员可以共享、同步和管理代码。 首先,我们需要理解...

    subversion服务器搭建和svn客户端软件

    Subversion(简称SVN)是一种版本控制系统,用于管理和跟踪文件及目录在开发过程中的更改。在IT行业中,Subversion被广泛应用于软件开发项目,帮助团队协作并保持代码库的一致性和完整性。本教程将深入讲解如何搭建...

    subversion

    Subversion 是一个开源的版本控制系统,它用于管理文件和目录的变更历史,使得多人协作开发成为可能。在给定的压缩包文件中,包含了 `subversion-1.7.2.tar.gz` 和 `subversion-deps-1.6.1.tar.gz` 两个文件,它们是...

    Windows下Subversion服务器搭建指南

    Subversion是一个开源的版本控制系统,允许多人协作编辑和管理文件,同时保持文件历史记录,便于团队成员之间的协作和代码管理。以下是一份详细的指南,帮助你在Windows上设置Subversion服务器。 1. **软件下载** ...

    搭建Subversion服务器并测试控制软件.doc

    SVN是一个开源的版本控制系统,它允许多人同时开发同一项目,确保资源共享和集中式管理。下面,我们将按照步骤详细讲解这个过程。 **步骤一:安装Subversion服务器** 1. **YUM安装Subversion**:在Linux系统中,...

    用Apache和Subversion搭建安全的版本控制环境

    CVS,成为开源软件开发中版本控制的首选系统。在服务器端,Subversion最大的独特之处,在于它可以通过一个扩展模块与 Apache的HTTP服务器相结合,实现很多高级的管理功能和安全特性。与CVS相比,Subversion 实现了...

    svn(subversion)版本管理工具 教程

    **SVN**,全称为 **Subversion**,是一款跨平台的版本控制系统,旨在管理随时间变化的数据。它将数据存储在一个中央仓库(repository)中,记录每次文件的变动,使用户能够恢复到旧版本或者浏览历史记录。SVN不仅适用...

    CollabNet Subversion Server与Tortoisesvn的配置,进行版本管理

    CollabNet Subversion Server是一款功能强大的版本控制系统,它结合了Apache Web服务器与Subversion版本控制软件的功能,为用户提供了一个稳定、高效且易于管理的版本控制平台。通过集成的方式,不仅简化了安装与...

    SVN代码的版本控制系统(含服务器端和客户端及其说明)

    SVN,全称为Subversion,是一种广泛应用于软件开发领域的版本控制系统。它允许团队成员协同工作,跟踪并管理项目中的文件和目录变化,确保代码的安全性和一致性。本文将深入探讨SVN的工作原理、服务器端和客户端的...

    linux系统安装subversion服务器与配置实用.pdf

    Subversion是一个开源的版本控制系统,常用于替代存在诸多限制的CVS系统,以解决文件名修改、目录管理、分支操作和二进制文件处理等问题。 1. **编写原因**: - 旧的CVS系统在管理大型软件项目时存在缺陷,如无法...

    SVN版本控制系统(客户端和服务端)

    Subversion(SVN)是一种广泛使用的集中式版本控制系统,支持图形化管理以及右键菜单版本控制管理。 #### 二、SVN的工作原理 SVN通过在服务器上存储项目的文件及其历史版本来工作。开发者可以在本地进行编辑和修改...

    CollabNet Subversion Edge 4.0.2 + TortoiseSVN+中文包 1.8.2安装、svn服务器搭建、svn工程添加、获取全过程

    CollabNet Subversion Edge 是一款集成了Subversion版本控制系统、Apache服务器和管理界面的开源工具,主要用于企业级的源代码管理和版本控制。该工具提供了一个直观的Web界面,方便管理员进行配置和管理。...

    subversion-1.6.1.tar.gz

    Subversion(简称svn)是一个广泛使用的版本控制系统,用于管理和跟踪文件和目录的变更。这个"subversion-1.6.1.tar.gz"文件是Subversion 1.6.1版本的服务器端源码包,特别设计用于Linux操作系统。源码包意味着你...

Global site tag (gtag.js) - Google Analytics