`

安装SVN服务器

阅读更多

 

前言

svn是目前使用比较多的版本控制软件,目前在windows下面的常用的svn客户端是乌龟,svn服务器常用的是 VisualSVN Server.在windows下面的客户端使用比较简单,例如VisualSVN就是傻瓜式操作。目前在linux下,svn服务器一般有两个选择:svnserve和apache,下文就主要介绍怎么在ubuntu9.10里安装和使用svn服务器。

Part 1:安装和创建本地库

在ubuntu下,需要安装的有apache2 subversion libapache2-svn
$ sudo apt-get install apache2 subversion libapache2-svn

现在所有需要的软件都安装上了,下一步在本地建一个目录作为本地仓库
$ mkdir /home/myrepos
$ svnadmin create /home/myrepos
到这一步,你就在本地建了一个代码仓库,你可以往里面加入工程,代码,并且可以在任何时候将代码回到你想要的时候。

例如现在有个工程,名称为 myproject,加入所在的路径是 /root/temp/myproject , 现在你想将这个工程导入到你的本地仓库中。
$ svn import -m "first import" /root/temp/myproject  file:///home/myrepos
这样这个工程就在你的本地仓库里了。现在你可以在本地任何目录里,从你的本地库里获取一个你的工程的拷贝。
$ svn checkout file:///home/myrepos
在这个拷贝里,你可以做修改,并通过命令提交到主干上。
$ svn commit -m " i have modify file"

加入你在这个拷贝里面新建了一个文件,叫做 c.java,你可以提交到本地库中。
$ svn add c.java
$ svn commit -m "first commit"

Part 2:svn服务器svnserve

svnserve和apache相比是轻量级的,也比较简单,svnserve包含在subversion里面,所以只要安装了subversion就相当于安装了一个小型的svn服务器。它使用自己的一套协议通信。例如访问apache时使用 http:// 前缀,而svnserve使用 svn:// 前缀.

上节里面我们在本地建了一个myrepos本地库,现在我们让svnserve运行起来
$ svnserve -d -r /home/myrepos
如果出现,这样的错误信息,“svnserve: 不能绑定服务器套接字: 地址已经被使用”
那先把svnserve进程干掉。
具体做法是
$ ps -aux  #查看进程,svnserve的pid为23647
$ kill -9 23647 #干掉svnserve
再次运行$ svnserve -d -r /home/myrepos

在局域网内的机器就可以和svnserve进行通讯。假如你的本机ip是10.13.37.84.可以通过下面的命令获取到拷贝。
$ svn checkout svn://10.13.37.84 myproject
这样一个简单的svn服务器就算建好了。

下一步我们来做权限管理
修改/home/myrepos/conf/svnserve.conf 改成下面这样
anon-access = read
auth-access = write
password-db = passwd
其中anon-access 和 auth-access 分别为匿名和有权限用户的权限,默认给匿名用户只读的权限,这很好,我们不需要改它们。但如果想拒绝匿名用户的访问,只需把 read 改成 none 就能达到目的。password-db 后的 passwd 则为定义用户名及密码的文件路径。这个文件默认跟 snvserve.conf 在同一个目录,下面看看怎么配置 passwd 中的内容。
# harry = harryssecret
# sally = sallyssecret
我们新建个自己的账户。
tester = mypasswd
这样tester就有写的权限了。
$svn commit -m " i am so strong" --username tester --password mypasswd

Part 3:svn服务器apache

 

现在我们使用apache作为svn服务器,apache支持http协议通信,配置也比较简单,主要是权限配置。

首先安装好apache。然后进去/etc/apache2/conf,修改apache2.conf,在下面加入

 

<Location "/myrepos">
DAV svn
SVNPath /home/myrepos
AuthType Basic
AuthName "Your repository name"
AuthUserFile /etc/subversion/passwd
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>

 

其中/etc/subversion/passwd这个文件中保存的是用户信息,这个文件需要我们新建。

然后添加一个用户

$ sudo htpasswd /etc/subversion/passwd tester

你需要把 repo 所在的目录和文件的所有权都改成系统中操作 Apache 的用户,这样在 commit 的时候才会被 Apache 认可。在 Ubuntu 中,这个用户叫 www-data

$ sudo chown -R www-data /home/myrepos

然后我们重启apache

$ sudo /etc/init.d/apache2 restart

 

最后我们测试一下,在浏览器里输入http://localhost/myrepos/

看见了工程目录就成功了。

在局域网中,也可以访问。

$ svn checkout http:// #svn服务器ip# /myrepos

 

 

参考:http://bemike.org/posts/258

分享到:
评论

相关推荐

    Windows下安装SVN服务器

    Windows环境下安装SVN服务器的知识点主要包括以下几个方面: 1. 系统与版本的选择: - 本文实例使用的是Windows Server 2003 R2 Enterprise X64 SP2(64位),同时适用于Windows Server 2003 X86 SP2、Windows XP ...

    ubuntu下简单安装svn服务器

    在Ubuntu操作系统下安装SVN服务器是一个较为直接的过程,虽然本指南针对的是Ubuntu 9.10版本,但其基本步骤对于大多数Ubuntu及其衍生版本都是适用的。SVN,即Subversion,是一种版本控制系统,广泛用于代码的版本...

    centos 7.9服务器 离线 搭建svn服务器

    centos 7.9服务器 离线 搭建svn服务器 ,该文章适用于 开发人员 实施人员 项目经理用于项目文档管理 代码管理,而不指定如何在centos7.9环境下离线搭建svn服务器,因为大多数的网站只是介绍yum install 的方式,但是...

    centos 7安装svn服务器教程.docx

    CentOS 7 安装 SVN 服务器教程 本文将详细介绍如何在 CentOS 7 上安装和配置 SVN 服务器。SVN(Subversion)是一种版本控制系统,广泛应用于软件开发、文档管理等领域。以下是安装和配置 SVN 服务器的步骤。 一、 ...

    安装svn服务器

    安装SVN服务器,我们需要VisualSVN Server,它是一个易于使用的Windows平台上的SVN服务器软件。在这个案例中,我们使用的是VisualSVN Server 2.5.7版本,对应的安装文件为`VisualSVN-Server-2.5.7.msi`。安装步骤...

    win7下安装svn服务器端及客户端详细步骤

    Win7 下安装 SVN 服务器端及客户端详细步骤 1. SVN 简介 SVN(Subversion)是一种版本控制系统,用于管理软件开发过程中的代码、文档等文件的变更。SVN 服务器端负责存储和管理版本控制库,客户端则负责与服务器端...

    CentOS 7搭建SVN服务器

    这将会安装SVN服务器及其依赖。 **二、创建SVN仓库** 安装完成后,我们需要创建一个SVN仓库来存储项目代码。在 `/var/svn` 目录下创建一个新的仓库: ```bash sudo mkdir /var/svn sudo svnadmin create /var/svn...

    Windows安装SVN服务器

    在Windows系统上安装SVN服务器是一个涉及多个步骤的过程,它包括设置一个中央资料档案库用于版本控制,以及配置服务器和客户端。SVN(SubVersion)是一种开源的版本控制系统,它可以追踪文件的修改历史,从而帮助...

    CentOS安装SVN服务器

    首先,我们来了解一下如何检查和安装SVN。在CentOS系统上,你可以通过`rpm -qa subversion`命令来检查是否已经安装了SVN。如果已安装了低版本的SVN,建议先卸载旧版本,使用`yum remove subversion`命令进行卸载。...

    centos离线搭建svn服务器(含教程,源码包)

    把手一步步离线搭建svn服务器,centos离线搭建svn服务器,linux离线搭建svn服务器。

    svn服务器安装配置

    #### 二、安装SVN服务器 ##### 2.1 检查SVN是否已安装 首先,我们需要检查系统上是否已经安装了SVN。可以通过执行以下命令来验证: ``` svnserve --version ``` 如果命令输出显示了SVN的版本号,则表示SVN已经...

    CentOS-6.5系统上安装SVN服务器端的方法及步骤

    ### CentOS-6.5系统上安装SVN服务器端的方法及步骤 #### 一、概述 在CentOS-6.5系统环境中安装Subversion (SVN) 服务器端是一项常见的任务,尤其是在需要支持版本控制和协作开发场景下。本文将详细介绍在CentOS-...

    svn服务器端下载svn服务器端下载svn服务器端下载

    2. **安装SVN服务器**:下载完成后,运行安装程序,按照向导的提示进行安装。在安装过程中,你需要指定安装路径,并配置服务器的基本设置,如端口号、仓库位置等。 3. **创建版本库**:安装完成后,你需要创建至少...

    安装svn服务器操作手册

    安装svn服务器操作手册,配合前面的两个安装软件。

    安装svn服务器及和eclipse集成

    NULL 博文链接:https://tcrct.iteye.com/blog/253969

    centos 下安装svn服务器

    在CentOS操作系统中安装SVN(Subversion)服务器,需要遵循一系列步骤来确保所有依赖项正确安装并配置。以下是详细的安装过程: 1. **安装依赖库** 首先,我们需要安装SVN所需的依赖库,包括apr(Apache Portable ...

    SVN 服务器和客户端安装

    SVN 服务器和客户端安装 SVN(Subversion)是一种版本控制系统,广泛应用于软件开发、文档管理等领域。为了使用 SVN,需要安装 SVN 服务器和客户端。下面是关于 SVN 服务器和客户端安装的知识点。 SVN 服务器安装 ...

    linux下安装SVN服务器(SVN1.5.4)

    安装完成后,需要设置SVN服务器的运行环境。在大多数情况下,我们会选择使用Apache HTTP Server(Apache2)作为SVN的前端服务器。首先,安装Apache2: ```bash sudo apt-get install apache2 ``` 或者对于RHEL/...

Global site tag (gtag.js) - Google Analytics