在ubuntu上安装svn+apache2
参考网站:
http://www.thinksaas.cn/group/topic/335434/
http://blog.sina.com.cn/s/blog_3eba8f1c0100dqk1.html
http://www.linuxidc.com/Linux/2015-05/117735.htm
1.安装软件
apt-get install subversion
apt-get install apache2
apt-get install libapache2-svn
2.创建SVN库
mkdir /home/svn
最好使用root用户,否则其他的用户会引发一些权限问题
3.创建项目
svnadmin create /home/svn/project 此时project下面会多出几个文件
root@ubuntu-14:/home/svn/project# ls -a
. .. conf db format hooks locks README.txt
然后进行读写授权
chmod
-R 777 /home/svn/project 否则在代码提交的时候会出现commit failed !can't open file
'/home/fruits/svn/projects/code/testsvn/db/txn-current-lock'!
4.cd conf
root@ubuntu-14:/home/svn/project#
cd conf
root@ubuntu-14:/home/svn/project/conf#
ls -a
. .. authz hooks-env.tmpl passwd svnserve.conf
5.开始修改配置文件
root@ubuntu-14:/home/svn/project/conf#
vi authz
[aliases]
[groups]
#用户分组
#
harry_and_sally=harry,sally
#
harry_sally_and_joe=harry,sally,&joe
admin=pm,admin
test=test
[/]
#组赋予读写权限的设置
@admin=rw
@test=r
还可以设置具体的目录权限
[/projectname/目录/子目录]
6.root@ubuntu-14:/home/svn/project/conf# vi
svnserve.conf
[general]
###
The anon-access and auth-access options control access to the
###
repository for unauthenticated (a.k.a. anonymous) users and
###
authenticated users, respectively.
###
Valid values are "write", "read", and "none".
###
Setting the value to "none" prohibits both reading and writing;
###
"read" allows read-only access, and "write" allows complete
###
read/write access to the repository.
###
The sample settings below are the defaults and specify that anonymous
###
users have read-only access to the repository, while authenticated
###
users have read and write access to the repository.
anon-access=read
auth-access=write
###
The password-db option controls the location of the password
###
database file. Unless you specify a path starting with a /,
###
the file's location is relative to the directory containing
###
this configuration file.
###
If SASL is enabled (see below), this file will NOT be used.
###
Uncomment the line below to use the default password file.
password-db=passwd
###
The authz-db option controls the location of the authorization
###
rules for path-based access control. Unless you specify a path
###
starting with a /, the file's location is relative to the
###
directory containing this file. The specified path may be a
###
repository relative URL (^/) or an absolute file:// URL to a text
###
file in a Subversion repository. If you don't specify an authz-db,
###
no path-based access control is done.
###
Uncomment the line below to use the default authorization file.
authz-db=authz
7.然后就是修改passwd文件
直接就是在【user】进行username=password的格式显示密码,如果你要支持http格式加密的访问这里暂时不用配置
htpasswd -c /home/svn/project/conf/passwd
username 然后会让输入2次密码
之后在进行添加用户的时候要去掉 -c 否则就会覆盖所有
例如:添加test
htpasswd
/home/svn/project/conf/passwd test
注:因为已存在passwd文件 htpasswd命令会报格式错误,最好删除创建仓库已存在的passwd文件,或者创建一个新文件
test:$apr1$FIjm/2hw$WtCyafEOc9rqBsPAewWGl1
#这是加密之后的
如果进行修改密码 这样操作也是可以的
8.配置apache
root@ubuntu-14:~#
cd /etc/apache2/mods-available/
root@ubuntu-14:/etc/apache2/mods-available#
vi dav_svn.conf
<Location /project>
DAV svn
#SVNParentPath /home/svn
SVNPath /home/svn/project
ModMimeUsePathInfo on
AuthzSVNAccessFile /home/svn/project/conf/authz
AuthzSVNAnonymous off
AuthzSVNNoAuthWhenAnonymousAllowed off
AuthType Basic
AuthName "Subversion"
AuthUserFile /home/svn/project/conf/passwd
Require valid-user
</Location>
9.如果要修改apache2端口[可以不做]
root@ubuntu-14:/etc/apache2#
vi ports.conf
Listen 端口 #你想要的端口
<IfModule
ssl_module>
Listen 443
</IfModule>
<IfModule
mod_gnutls.c>
Listen 443
</IfModule>
10.如果你想修改SVN默认的端口[可以不做]
重新指定一个端口号(默认端口3690)比如修改为3691
svnserve -d –listen-port 3691 -r
/home/svn/project
11.配置完毕重启/etc/init.d/apache2 restart
在ubuntu上安装svn+apache2的更多相关文章
- 在Ubuntu上安装LAMP服务器
1.安装Ubuntu上安装LAMP apt-get install lamp-server^ 2.安装过程中设置MySql密码 3.测试 创建index.php var/www/html/index. ...
- 【转载】如何在Ubuntu上安装LAMP服务器系统?
转载自:http://os.51cto.com/art/201307/405333.htm [2013年7月25日 51CTO外电头条]为何应该在Ubuntu上安装LAMP服务器?从事Web开发工作时 ...
- [转载]如何在Ubuntu上安装LAMP服务器系统
[2013年7月25日 51CTO外电头条]为何应该在Ubuntu上安装LAMP服务器?从事Web开发工作时,我更偏爱在不受干扰的情况下,在我那台计算机上的开发环境下进行开发.我宁愿所犯的错误大部分是 ...
- 如何在Ubuntu上安装LAMP服务器系统?
在Ubuntu上安装LAMP Ubuntu的开发人员让人们很容易安装和配置LAMP软件包,只要借助一个终端命令.所以,打开终端窗口,让我们开始入手吧. sudo apt-get install lam ...
- 如何在Linux(Ubuntu)上安装Redmine
费话就不多说了,本文主要描述如何在如何在Linux(Ubuntu)上安装Redmine.通过这篇文章你将了解如下内容. TL;DR 在Linux(Ubuntu)上安装Redmine的基本流程 配置ph ...
- [异常解决] ubuntu上安装JLink驱动遇到的坑及给后来者的建议
一.前言 最近将整个电脑格式化,改成了linux操作系统 希望这样能让自己在一个新的世界探索技术.提升自己吧- win上的工具用多了,就不想变化了- 继上一篇<ubuntu上安装虚拟机遇到的问题 ...
- Ubuntu上安装Robomongo及添加到启动器
到目前为止,Robomongo仍是MongoDB最好的客户端管理工具,如需在Ubuntu上安装Robomongo,可直接从官网下载.tar.gz压缩包进行解压,然后直接运行bin目录下的robomon ...
- 在 Ubuntu 上安装 Android Studio
在 Ubuntu 上安装 Android Studio http://www.linuxidc.com/Linux/2013-05/84812.htm 打开terminal,输入以下命令 sudo a ...
- Ubuntu上安装Karma失败对策
在Ubuntu上安装Karma遇到超时 timeout 错误.Google了一下,国外的码农给了一个快捷的解决方案,实测可行,贴在这里: sudo apt-get install npm nodejs ...
随机推荐
- ubuntu17.04 配置go环境变量
把官网下载好的tar解压后,go文件夹放到 /usr/local 目录下 在当前用户的 .bashrc 文件末尾添加 这句话 export PATH=$PATH:/usr/local/go/bin 执 ...
- PAAS、IAAS和SAAS区别
IaaS: Infrastructure-as-a-Service(基础设施即服务) 有了IaaS,你可以将硬件外包到别的地方去.IaaS公司会提供场外服务器,存储和网络硬件,你可以租用.节省了维护成 ...
- android学习一---搭建开发环境
android基于Java并运行Linux内核上的轻量级操作系统.由于是基于java的,学习起来也不是太难,对java有一定了解并知道一些基本的图形用户界面,入门就很简单了. 一.了解JDK ,SDK ...
- 剑指offer 面试46题
面试46题: 题目:把数字翻译成字符串 题:给定一个数字,我们按照如下规则把它翻译为字符串:0翻译成“a”,1翻译成“b”,……,11翻译成“1”,……,25翻译成“z”.一个数字可能有多个翻译.例如 ...
- MySQL basics
@1: MySQL有三大类数据类型, 分别为数字.日期\时间.字符串, 这三大类中又更细致的划分了许多子类型: 数字类型 整数: tinyint.smallint.mediumint.int.bigi ...
- LVS Nginx Haproxy对比
一般对负载均衡的使用是随着网站规模的提升根据不同的阶段来使用不同的技术. 具体的应用需求还得具体分析,如果是中小型的Web应用,比如日PV小于1000万,用Nginx就完全可以了: 如果机器不少,可以 ...
- Android sdk manager加载缓慢或加载不出来
1.打开android sdk manager 2.打开tool->options,如图所示 3.将Proxy Settings 里的HTTP Proxy Server和HTTP Proxy P ...
- IBM的SOA方法论之一——五个切入点和八个场景
一.什么是SOA: 面向服务的体系结构(Service-Oriented Architecture,SOA)是一种 IT 体系结构风格,支持将您的业务转换为一组相互链接的服务或可重复业务任务,可在需要 ...
- Spring session共享(使用redis)
SpringBoot+Redis实现HttpSession共享 前提:需要使用redis做session存储 一.效果演练(这里使用SpringBoot工程,Spring同理) 1.一个工程使用两个端 ...
- 主攻ASP.NET.4.5.1 MVC5.0之重生:系统角色与权限(一)
数据结构 权限分配 1.在项目中新建文件夹Helpers 2.在HR.Helpers文件夹下添加EnumMoudle.Cs namespace HR.Helpers { public enum Enu ...