在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 ...
随机推荐
- 前端基础 & 初识CSS
CSS介绍 CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素.l 当浏览器读到一个样式表,它就会按照这个样式表来对文档进行格式化(渲染). CSS语法 每个CS ...
- Activity的生命周期整理
Activity主要的三种状态: Running(运行):在屏幕前台(位于当前任务堆栈的顶部) Paused(暂停):失去焦点但仍然对用户可见(覆盖Activity可能是透明或未完全遮挡) Stopp ...
- Centos小脚本(sftp)
sftp用户创建,改变属组,家目录 #!/bin/python import os,sys class sftp_user(object): def __init__(self,user,passwd ...
- The Maximum Unreachable Node Set 【17南宁区域赛】 【二分匹配】
题目链接 https://nanti.jisuanke.com/t/19979 题意 给出n个点 m 条边 求选出最大的点数使得这个点集之间 任意两点不可达 题目中给的边是有向边 思路 这道题 实际上 ...
- java 断言工具类
1.断言工具类 package com.sze.redis.util; import java.util.Collection; import java.util.Map; import com.sz ...
- yii常用操作函数
<?php defined('YII_DEBUG') or define('YII_DEBUG', true); //当在调试模式下,应用会保留更多日志信息,如果抛出异常,会显示详细的错误调用堆 ...
- id和NSObject *和instanceType的区别与联系
id 被成为万能指针,也就是可以指向任何对象. NSObject * 本身就是定义指向NSObject类型的指针. 那么这两者有什么区别吗? 这两者都是既可以作为返回值,又可以作为变量修饰.而其主要区 ...
- Python 集合set概念和操作
# 集合 # 概念 # 无序的, 不可随机访问的, 不可重复的元素集合 # 与数学中集合的概念类似,可对其进行交.并.差.补等逻辑运算 # 分为可变集合和非可变集合 # set # 为可变集合 # 增 ...
- poj 2406 Power Strings【字符串+最小循环节的个数】
Po ...
- freopen重定向输入
#include <bits\stdc++.h> using namespace std; int main() { freopen("C:\\Users\\dcf\\Deskt ...