Ubuntu 14.04 下搭建SVN服务器 svn://

安装软件包:

sudo apt-get install subversion

之后选择SVN服务文件及配置文件的放置位置。我放在了/srv下的svn目录。

cd /srv

sudo mkdir svn

我的svn版本仓库叫tone_src

cd /srv/svn

sudo mkdir tone_src

目录建好后 创建版本仓库

sudo svnadmin create /srv/svn/tone_src

执行之后 tone_src下文件结构如下:  

tone@ubuntu:/srv/svn/tone_src$ ls -l
总用量 24
drwxr-xr-x 2 root root 4096  1月 15 10:52 conf
drwxr-sr-x 6 root root 4096  1月 15 14:52 db
-r--r--r-- 1 root root    2  1月 15 10:50 format
drwxr-xr-x 2 root root 4096  1月 15 10:50 hooks
drwxr-xr-x 2 root root 4096  1月 15 10:50 locks
-rw-r--r-- 1 root root  246  1月 15 10:50 README.txt

下面进行配置:

我们需要修改conf目录下的三个文件,authz;passwd;svnserve.conf

编辑svnserve.conf

[general]
#匿名用户不可读
anon-access = none
#权限用户可写
auth-access = write
#密码文件为passwd
password-db = passwd
#权限文件为authz
authz-db = authz

编辑authz 制定管理员组 即admin组的用户为tone admin组有rw(读写权限) 所有人有r(读权限)

[groups]
admin= tone

[/]
@admin =rw
*=r

这里组的名字 不一定叫admin 你的管理员组名 可以叫做任意的名字,另外比如admin组还有其他用户,可以这样制定 admin=tone,tone1,tone2 类似这样的写法

编制passwd 文件 设定用户密码

[users]
# harry = harryssecret
# sally = sallyssecret
tone=www

tone的密码为www 对 没看错 明文的。

以上都做完之后,就可以开启你的svn服务器了。

sudo svnserve -d -r /erv/svn/

-d 已守护模式启动

-r 制定svn版本库根目录 这样是便于客户端不用输入全路径 就可以访问版本库了

例如:svn://127.0.0.1/tone_src

值得注意的是 我这里是用sudo 启动的  因为之前的svn目录 及tone_src目录 我都是在sudo下创建的。目录的所属权限都是root

如果我以 下面的方式启动 是可以的 但是当客户段提交文件的时候 会出问题,因为此时的svnserve 服务对svn版本库目录没有写的权限
svnserve -d -r /erv/svn/

推荐一个14.04 下的svn 客户端

$ sudo add-apt-repository ppa:rabbitvcs/ppa
$ sudo apt-get update
$ sudo apt-get install rabbitvcs-nautilus3

# Optional
$ sudo apt-get install rabbitvcs-gedit
$ sudo apt-get install rabbitvcs-cli

对于eclipse 客户端的用户,需要安装 subclipse 插件。安装插件时注意客户端的版本和服务端的版本一定要对应好,最好不要考虑兼容,最好就是准确对应,

截至到目前Ubuntu 14.04 下Subversion 的版本是1.8.8 与他对应的subclipse版本是1.10.8

另外还要用到javahl的版本为1.8.8

具体安装配置如下:

下安装 配置subclipse1.10.8本版 http://subclipse.tigris.org/files/documents/906/49397/site-1.10.8.zip

下载后解压 得到一个名为site-1.10.8 的文件夹  请将site-1.10.8放到eclipse 目录下的dropins目录内,重启eclipse

重启之后subclipse1.10.8 就应该可以安装完成了,如果没有成功,检查看文件夹的权限。或者以clean 模式再次启动eclipse

subclipse 安装完成后 就会出现 org.apache.subversion.javahl.clientexception:svn..... 这样的错误

这是因为没有安装javahl  请执行 如下命令进行安装。

sudo apt-get install libsvn-java

安装完毕之后进行一个小的配置,

先查找 javahl所在路径

sudo find /usr -name libsvnjavahl-1.so

结果显示路径在/usr/lib/x86_64-linux-gnu/jni

修改eclipse.ini 增加 一行-Djava.library.path=/usr/lib/x86_64-linux-gnu/jni
Ubuntu升级到12.04以后,JavaHL Library的位置由原来/usr/lib/jni改为了/usr/lib/x86_64-linux-gnu/jni 
14.04 也是在/usr/lib/x86_64-linux-gnu/jni

-startup
plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.100.v20110505
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Djava.library.path=/usr/lib/x86_64-linux-gnu/jni
-Dorg.eclipse.swt.browser.XULRunnerPath=/opt/commonTools/xulrunner
-Dosgi.requiredJavaVersion=1.5
-XX:MaxPermSize=256m
-Xms40m
-Xmx512m

这样启动eclipse 后 就能使用svn了

--------------------------------------分割线 --------------------------------------

Linux中Subversion配置实例 http://www.linuxidc.com/Linux/2012-02/53109.htm

CentOS 6.2 SVN搭建 (YUM安装) http://www.linuxidc.com/Linux/2013-10/91903.htm

CentOS 6.5部署Apache+SVN  http://www.linuxidc.com/Linux/2013-12/94315.htm

Apache+SVN搭建SVN服务器 http://www.linuxidc.com/Linux/2013-03/81379.htm

Windows下SVN服务器搭建和使用 + 客户端重新设置密码 http://www.linuxidc.com/Linux/2013-05/85189p5.htm

Ubuntu Server 12.04 安装 SVN 并迁移 Virtual SVN数据 http://www.linuxidc.com/Linux/2013-05/84695.htm

Ubuntu Server搭建svn服务以及迁移方法 http://www.linuxidc.com/Linux/2013-05/84693.htm

借助网盘搭建SVN服务器 http://www.linuxidc.com/Linux/2013-10/91271.htm

--------------------------------------分割线 --------------------------------------

更多Ubuntu相关信息见Ubuntu 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=2

本文永久更新链接地址http://www.linuxidc.com/Linux/2015-01/111956.htm

Ubuntu 14.04 下搭建SVN服务器 svn://的更多相关文章

  1. Ubuntu 14.04 下搭建SVN服务器 (转载自 http://www.linuxidc.com/Linux/2015-01/111956.htm)-------------我所用到是红色字体

    http://www.linuxidc.com/Linux/2015-01/111956.htm Ubuntu 14.04 下搭建SVN服务器 svn:// 安装软件包: sudo apt-get i ...

  2. Ubuntu 14.04下搭建Node.js的开发环境

    最近想找一个轻量级且支持快速开发的服务开发平台,选来选去选择了Node.js,当时有几种选择: Python + Django(用过Django,虽然开发快速,但是感觉性能并不太好). Ruby + ...

  3. ubuntu 12.04下搭建web服务器(MySQL+PHP+Apache) 教程

    最近,经理让我搭建一个服务器,我从网上找了一篇比较好的教程,按教程一步步执行感觉挺顺利,所以准备整理一下这个教程.尊重原版注明出处:http://news.2ky.cn/Linux/ubuntu-12 ...

  4. ubuntu 16.04下搭建web服务器(MySQL+PHP+Apache) 教程

    1.开始说明 下面很多可能参照网上其中以为前辈的,但有所改进吧.这些设置可能会有所不同,你需要根据不同情况进行修改. 安装apache2 2.切换管理员身份 在ubuntu中需要用root身份进行操作 ...

  5. ubuntu 14.04下搭建esp32开发环境

    esp32是乐鑫出品的一款集成了wifi和蓝牙的集成模块,板上自带两个哈佛结构的Xtensa LX6 CPU双核处理器,本文主要讲解如何在linux下搭建其编译开发环境. 首先ctrl+alt+t打开 ...

  6. Ubuntu 14.04下搭建Python3.4 + PyQt5.3.2 + Eric6.0开发平台

    引言 找了很多Python GUI工具集,还是觉得PyQt比较理想,功能强大跨平台,还支持界面设计器.花一天时间折腾了Ubuntu14.04(32位)+ Python3.4 + Qt5.3.2 + P ...

  7. Ubuntu 14.04下搭建 Android 开发环境(1) -JDK安装

    1.下载最新的jdk安装,地址:http://www.oracle.com/technetwork/java/javase/downloads/ 2.解压jdk-8u20-linux-x64.gz,我 ...

  8. Ubuntu 14.04 下安装 MongoDB 服务器 和 PHP MongoDB Driver 数据驱动

    https://laravel-china.org/topics/309/install-mongodb-server-and-php-mongodb-driver-data-driver-under ...

  9. Ubuntu 14.04快速搭建SVN服务器及日常使用【转】

    转自:http://www.linuxidc.com/Linux/2015-05/117735.htm 1.介绍  Subversion是一个自由,开源的版本控制系统,这个版本库就像一个普通的文件服务 ...

随机推荐

  1. Python学习手册(1入门知识-数据类型)

    UNIX env查找技巧 在一些UNIX系统上,可以用这样一种方法避免硬编码Python解释器的路径,在文件的特定的第一行注释中写上这样一句话. #! usr/bin/env/ python...sc ...

  2. MessageFormat用法

    MessageFormat用来格式化一个消息,通常是一个字符串,比如: String str = "I'm not a {0}, age is {1,number,short}", ...

  3. Java实现zip压缩多个文件下载

    为了更好的演示,首先创建一个文件实体FileBean,包含了文件路径和文件名称: package com.javaweb.entity; import java.io.Serializable; /* ...

  4. jQuery.Callbacks 源码解读二

    一.参数标记 /* * once: 确保回调列表仅只fire一次 * unique: 在执行add操作中,确保回调列表中不存在重复的回调 * stopOnFalse: 当执行回调返回值为false,则 ...

  5. Gulp实现web服务器

    Gulp实现web服务器 阅读目录 一:gulp实现web服务器配置: 二:添加实时刷新(livereload)支持 回到顶部 一:gulp实现web服务器配置: 对于前端开发而言,需要在本地搭建一个 ...

  6. SQL如何将A,B,C替换为'A','B','C'

    因为涉及到逗号,和单引号' 本来想一次转换成功, 但是最后貌似没有好的办法, 只有分两次完成了 select REPLACE(REPLACE('A,B,C',',','>,>'),'> ...

  7. Inno Step 安装包程序 写INI配置文件脚本

    [INI]Filename: "{app}\Config\config.ini"; Section: "config";Key: "name" ...

  8. iOS开发——高级篇——iOS键盘的相关设置(UITextfield)

    一.键盘风格 UIKit框架支持8种风格键盘. typedef enum { UIKeyboardTypeDefault, // 默认键盘:支持所有字符 UIKeyboardTypeASCIICapa ...

  9. Laravel 5.1 文档攻略 —— Eloquent Collection

    简介 像all()和get(),还有一些处理模型关系这种会返回多条数据的方法,在Eloquent里面会返回一个collection对象集合(对象装在对象里),而不是像DQB的数组结果集合(对象装在数组 ...

  10. Android使用Unity导致Activity被销毁的解决办法

    由于需要在Android中使用Unity(Android的Activity会继承Unity提供的UnityPlayerActivity),可能是第三方的原因退出Unity后就导致Android整个应用 ...