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

Ubuntu 12.04上安装subversion

    博客分类:
  • OS
 
阅读更多

从官网http://www.collab.net/downloads/subversion 下载Subversion Edge 3.1.2 (Linux 64-bit)

 

 

cd /opt

tar xfvz CollabNetSubversionEdge-3.1.2_linux-x86_64.tar.gz 

 

 

在/etc/profile中加以下2行

export JAVA_HOME=/etc/lib/jvm/default-java

export PATH=$PATH:$JAVA_HOME

再运行一下source /etc/profile

 

cd csvn

sudo -E bin/csvn install

 

bin/csvn start

 

启动失败!!

用bin/csvn console 发现 ERROR: Could not write pid file /opt/csvn/bin../data/run/csvn.pid Permission denied

即使chmod加上权限,还是失败!!

 

 

访问 http://localhost:3343/csvn

Username: admin

Password: admin

 

另外SSL保护的版本也在运行,可以访问https://localhost:4434/csvn

 

配置 apache subversion 服务器,让其随系统启动而自动启动

sudo bin/csvn-httpd install

 

 

===============================================

没办法,还是用老svn

 

库是从windows原来转来的

svnadmin dump c:/csvn/data/repositories/A4COSL > f:\A4COSL.dump

 

重建库

svnadmin create /home/fsong/svndata/A4COSL

 

导入

svnadmin load /home/fsong/svndata/A4COSL < A4COSL.dump

 

配置访问权限,以通过自带协议访问(svn://)

方便起见,所有的库采用同样的权限配置。

 

vi /home/fsong/svndata/A4COSL/conf/svnserve.conf

[general]

anon-access = none

auth-access = write

password-db = /home/fsong/svncommon/conf/passwd

authz-db = /home/fsong/svncommon/conf/authz

 

vi /home/fsong/svncommon/conf/authz

[groups]

admin =xxx, yyy

guest = zzz

 

d[/]

@admin = rw

@guest = r

* =

 

 

vi /home/fsong/svncommon/conf/passwd

[users]

xxx = xxx's password

yyy = yyy's password

zzz = zzz's password

 

 

上述三个配置文件的改动保存后即生效,无需重启svnserver

 

为了能在系统启动时自动启动svn服务,在.profile插入一行:

svnserve -d -r /home/fsong/svndata

 

-d:以daemon方式后台运行
-r :指定根目录/home/fsong/svndata

为了在用户启动时自动加载,配置在文件$HOME/.profile中
svnserve -d -r $HOME/svndata

如果想通过http或https协议访问svn,继续往下看 ---  参见Ubuntu wiki (原文出处 )

除了subversion必须安装之外,还要装
$ sudo apt-get install libapache2-svn
添加subversion组,把自己和apache用户(www-data)加入这个组
sudo addgroup subversion
sudo usermod -G subversion -a www-data

 

 

现在执行下面的命令

$ sudo chown -R root:subversion /home/fsong/svndata/A4COSL

如果是以root帐号创建的库,后面Check in时可能会遇到如下错误:

Can't open '/home/fsong/svndata/db/txn-current-lock': Permission denied

 

解决办法就是

 

$ sudo chown -R fsong:subversion /home/fsong/svndata/A4COSL
$ sudo chmod -R 755 /home/fsong/svndata/A4COSL

通过 WebDAV 协议访问(http:// )

要通过 WebDAV 协议访问 SVN 文件仓库,您必须配置您的 Apache 2 Web 服务器。您必须加入下面的代码片段到您的 /etc/apache2/mods-available/dav_svn.conf中:

 

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

如果需要用户每次登录时都进行用户密码验证,请将<LimitExcept GET PROPFIND OPTIONS REPORT>与</LimitExcept>两行注释掉。

当您添加了上面的内容,您必须重新起动 Apache 2 Web 服务器,请输入下面的命令:

sudo /etc/init.d/apache2 restart

接下来,您需要创建 /etc/subversion/passwd 文件,该文件包含了用户授权的详细信息。要添加用户,您可以执行下面的命令:

sudo htpasswd -c /etc/subversion/passwd user_name1
sudo htpasswd /etc/subversion/passwd user_name2 

它会提示您输入密码,当您输入了密码,该用户就建立了。“-c”选项表示创建新的/etc/subversion/passwd文件,所以user_name所指的用户将是文件中唯一的用户。如果要添加其他用户,则去掉“-c”选项即可:

sudo htpasswd /etc/subversion/passwd other_user_name

您可以通过下面的命令来访问文件仓库:

$ svn co http://hostname/svn/myproject myproject --username user_name

它会提示您输入密码。您必须输入您使用 htpasswd 设置的密码。当通过验证,项目的文件就被签出了。

警告:密码是通过纯文本传输的。如果您担心密码泄漏的问题,我们建议您使用 SSL 加密,有关详情请看下一节。

[编辑 ] 通过具有安全套接字(SSL)的 WebDAV 协议访问(https:// )

通过具有 SSL 加密的 WebDAV 协议访问 SVN 文件仓库(https:// )非常类似上节所述的内容,除了您必须为您的 Apache 2 Web 服务器设置数字证书之外。

您可以安装由诸如 Verisign 发放的数字签名,或者您可以安装您自己的数字签名。

我们假设您已经为 Apache 2 Web 服务器安装和配置好了相应的数字证书。现在按照上一节所描述的方法访问 SVN 文件仓库,别忘了把 http://  换成https:// 。如何,几乎是一模一样的!

分享到:
评论

相关推荐

    ubuntu12.04 svn 服务器配置

    在Ubuntu 12.04上,首先需要通过apt-get命令安装Subversion及其工具: ``` $ sudo apt-get install subversion $ sudo apt-get install subversion-tools ``` 2. **创建SVN管理用户和组** 创建一个专门用于...

    Ubuntu12.04下交叉编译VLC-2.1.1-Win32程序的说明

    - 安装Ubuntu 12.04 32位虚拟机,因为这个版本可以方便地在线安装所需的编译环境。 - 更新系统软件包:`sudo apt-get update` 2. **安装GCC/G++和MinGW** - 安装GCC/G++,这是Linux下的标准C/C++编译器:`sudo ...

    Opensips在Ubuntu 12.04 64位下的部署

    在Ubuntu 12.04 64位系统下部署OpenSIPS需要遵循一系列步骤,以下是对这些步骤的详细解释: 1. **系统更新**: 在开始任何安装之前,首先确保你的Ubuntu系统是最新的,可以通过运行`apt-get update`来更新软件源...

    x49gp:这是x49gp的分支,可在Ubuntu 12.04上编译

    更新了它,使其可以在Ubuntu 12.04上编译。 -尼古拉斯·基希纳(Nicholas Kirchner) 快速入门指南2010年4月25日Egan Ford 注意:阅读所有说明 先决条件: OS / X 10.6 64位: 依次安装X11,Xcode(从安装媒体...

    ubuntu12.04使用c编写php扩展模块教程分享

    系统是ubuntu 12.04,已经安装好了apache和php,php的版本是5.3.10。 以下操作如果碰到权限方面的问题,建议切换成root操作。 1、下载源码 签出php 5.3.10的源代码复制代码 代码如下:$ svn checkout ...

    mdm9607 mdm9x07编译环境安装

    本文档将指导您如何在Ubuntu 12.04或Ubuntu 14(64位)系统上安装、更新及配置MDM9607/MDM9X07的编译环境。为了确保安装过程顺利进行,您需要具备root权限或能够通过sudo命令获得root权限。 #### 二、安装Ubuntu 1...

    wifidog安装_ubunut

    Ubuntu desktop 12.04是Ubuntu的一個稳定版本,适合 WiFidog的安装和配置。 二、安装Apache、PHP、Postgres和WiFidog服务器 WiFidog需要Apache、PHP和Postgres服务器的支持。Apache是流行的Web服务器软件,PHP是...

    智能路由器固件的编译及烧写.pdf

    本文旨在详细介绍如何在PC上安装和配置OpenWrt开发环境,以及如何从互联网上下载OpenWrt源代码、加入自定义应用程序、编译生成IPK安装包和.bin格式的固件,并最终将固件烧录到路由器中的整个过程。 #### 编译环境的...

Global site tag (gtag.js) - Google Analytics