Ubuntu下SVN服务器安装和配置
一、SVN安装
1.安装包
$ sudo apt-get install subversion
2.添加svn管理用户及subversion组
#添加用户
$ sudo adduser svnuser
#添加分组
$ sudo addgroup svngroup
#添加用户到分组
$ sudo adduser svnuser svngroup
3.创建项目目录
$ sudo mkdir /var/www/svn
$ cd /var/www/svn
4.创建SVN文件仓库
$ sudo svnadmin create /var/www/svn/svnroot
5.修改所有者
chown svnuser.svngroup -R svnroot
6.访问方式及项目导入
$ svn co file://var/www/svn/svnroot
或者
$ svn co file://localhost/var/www/svn/svnroot
#注意:
如果您并不确定主机的名称,必须使用三个斜杠(///),而如果您指定了主机的名称,则必须使用两个斜杠(//).
#下面的命令用于将项目导入到SVN 文件仓库,一定要注明导入信息
svn import -m "new commit" /root/test file://localhost/var/www/svn/svnroot
/root/test是需要导入的文件的位置
file://localhost/var/www/svn/svnroot是仓库地址
7.访问权限设置
修改 /var/www/svn/svnroot/目录下:
svnserve.conf 、passwd 、authz三个文件,行最前端不允许有空格
编辑svnserve.conf文件,把如下两行取消注释
password-db = password
authz-db = authz
//补充说明
#[general]
anon-access = read
auth-access = write
password-db = passwd
其中anon-access和auth-access分别为匿名和有权限用户的权限,默认给匿名用户只读的权限,但如果想拒绝匿名用户的访问,只需把 read改成none就能达到目的。
编辑var/www/svnuser/etc/passwd 如下:
[users]
FansUnion = 123456
编辑var/www/svnuser/etc/authz如下
[groups]
admin = FansUnion
[/]
@admin=rw
*=r
这里设置了FansUnion这个用户,密码是123456
8.启动SVN服务
svnserve -d -r /var/www/svn
描述说明:
-d 表示svnserver以“守护”进程模式运行
-r 指定文件系统的根位置(版本库的根目录),这样客户端不用输入全路径,就可以访问版本库
如: svn://localhost/svnroot
这时SVN安装就完成了.
局域网访问方式:
例如:svn checkout svn://localhost/svnroot --username FansUnion --password 123456 /var/www/svnroot/
二、通过HTTP访问SVN仓库(Apache)
1.安装包 (已安装subversion)
$ sudo apt-get install libapache2-svn
2.创建版本仓库
sudo svnadmin create /var/www/svn/svnroot
目录地址必须存在,这个就是保存版本仓库的地方,不同的版本仓库创建不同的文件夹即可,比如:
本来/var/www/svn/svnroot这个目录下什么都没有,执行下面的命令之后再去看一下,多出一些文件和文件夹,我们需要操作的是conf这个文件夹,这个文件夹下有一个文件,叫做passwd,用来存放用户名和密码。
3.修改用户和组
然后把这个版本仓库目录授权给apache读写:
sudo chown -R www-data:www-data /var/www/svn/svnroot
4.编辑apache配置文件
sudo vim /etc/apache2/mods-available/dav_svn.conf
加入如下内容:
<Location /svnroot>
DAV svn
SVNPath /var/www/svn/svnroot
AuthType Basic
AuthName "Dream Team Svn Repos"
AuthUserFile /var/www/svn/svnroot/conf/passwd
#<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
#</LimitExcept>
</Location>
location说的是访问地址,比如上述地址,访问的时候就是
http://127.0.0.1/svnroot
其中有两行被注释掉了,以保证每次都需要用户名密码。
5.创建访问用户
建议将用户名密码文件存放在当前版本仓库下conf文件夹下,这样版本仓库多的时候无至于太乱。
因为conf文件夹下已经存在passwd文件了,所以直接添加用户:
sudo htpasswd -c /var/www/svn/svnroot/conf/passwd leiwen
(-c,创建passwdfile文件。如果passwdfile已经存在,那么将被清空并改写。)
然后输入两遍密码,leiwen这个用户就创建好了。
打开/var/www/svn/svnroot/conf/passwd这个文件,会开到形如如下形式的文本:
leiwen:$apr1$spmGy53l$m7RcVXWq/xsAEtRXFDlD4 //后面是加密后的密码。
#这种方法比较合适
sudo htpasswd -b /var/www/svn/svnroot/conf/passwd FansUnion 123456
(123456将被加密,已有的密码文件会被更新,而不是从新创建)
创建以后,再次需要往别的版本仓库添加这个用户,直接把这一行复制过去就可以了。
6.重启apache
sudo /etc/init.d/apache2 restart
或service apache2 restart
7.htpasswd命令参考
Usage:
htpasswd [-cmdpsD] passwordfile username
htpasswd -b[cmdpsD] passwordfile username password
htpasswd -n[mdps] username
htpasswd -nb[mdps] username password
-c Create a new file.
-n Don't update file; display results on stdout.
-m Force MD5 encryption of the password (default).
-d Force CRYPT encryption of the password.
-p Do not encrypt the password (plaintext).
-s Force SHA encryption of the password.
-b Use the password from the command line rather than prompting for it.
-D Delete the specified user.
On other systems than Windows, NetWare and TPF the '-p' flag will probably not work.
The SHA algorithm does not use a salt and is less secure than the MD5 algorithm.
有问题请留言.
原文参见:http://FansUnion.cn/articles/1995(小雷网-FansUnion.cn)
Ubuntu下SVN服务器安装和配置的更多相关文章
- [转载]Ubuntu下Git服务器安装与配置
原文地址:Ubuntu下Git服务器安装与配置作者:F民抄 1. 安装 1.1 安装Git-Core: sudo apt-get install git-core 1.2 安装 Gitosis sud ...
- 【转载】Ubuntu下SVN安装和配置
一.SVN安装 1.安装包 1.$ sudo apt-get install subversion 2.创建项目目录 $ sudo mkdir /home/xiaozhe/svn $ cd /home ...
- Ubuntu下SVN安装和配置
一.SVN安装 1.安装包 1.$ sudo apt-get install subversion 2.创建项目目录 $ sudo mkdir /home/xiaozhe/svn $ cd /home ...
- ubuntu下SVN服务器安装配置
SVN服务器端: 1.安装包 $ sudo apt-get install subversion 2.添加svn管理用户及subversion组 $ sudo adduser svnuser $ su ...
- [源码管理] ubuntu下SVN服务器安装配置
一.SVN安装1.安装包$ sudo apt-get install subversion2.添加svn管理用户及subversion组$ sudo adduser svnuser$ sudo add ...
- Linux下SVN服务器安装配置及客户端安装说明
原文地址:http://wenku.baidu.com/link?url=h3dVAMx4azpOXEND5HQEE6nliE8-zc0GSQ03yv4cUs1vXMALXF64UsK7kT7kXm_ ...
- Linux下SVN服务器搭建配置
Linux下SVN服务器搭建配置 1.SVN服务安装 yum install subversion 2.创建SVN代码仓库 mkdir /data/svn svnadmin create /data/ ...
- ubuntu下安装mysql和配置远程访问
ubuntu下安装mysql和配置远程访问 下载安装mysql sudo apt-get install mysql-client mysql-server 安装的时候会提示要设置root密码,如 ...
- linux下WEB服务器安装、配置VSFTP
转载 http://www.oicto.com/centos-vsftp/?tdsourcetag=s_pcqq_aiomsg linux下WEB服务器安装.配置VSFTP 由 admin · 发布 ...
随机推荐
- 说说Kindle那些事
已经不记得是什么时候在哪里听过kindle这玩意的了,反正最开始买kindle还是大四上学期,貌似是2012-9-30,那时候是整个大学最闲的时候,不知道哪天闲的蛋疼一冲动就买了个kindle4黑色款 ...
- ArcGIS api for javascript——查询,然后单击显示信息窗口
描述 本例展示如何配置查询任务为示例的工作流程: 1.用户单击一个要素来加亮显示. 2.用户再一次单击要素来查看属性信息的 InfoWindow. 本例查询USA州,因此ESRI_StateCityH ...
- 查看SQLSERVER当前正在运行的sql信息
能够使用SQL Profiler捕捉在SQL Server实例上运行的活动.这种活动被称为Profiler跟踪.这个就不多说了,大家都知道,以下是使用代码为实现同样的效果. SET TRANSACTI ...
- Linux软防火墙ACL匹配的优化点
首先.请求不要再诬陷Netfilter.尽管它有一些固有性能损耗,但敬请不要将iptables和Netfilter等同,假设你要抓元凶,请直接说iptables,而不要说成Netfilter! ...
- UITextField监控文字变化方法
项目里须要在不隐藏键盘的情况下.来更改button 的状态. 这里就是要对uitextfield监控.uitextfield继承于UIControl.所以能够 使用addTarget方法.详细例如以下 ...
- 离散化求RECT1
本文转载至点击打开链接 #include<stdio.h> struct node{ int x1,y1,x2,y2,c; }; struct node s[1010]; int px[2 ...
- HDUOJ Let the Balloon Rise 1004
/* Let the Balloon Rise Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Ja ...
- Python3小白初体验
三层循环嵌套,以后优化 data = { "北京":{ "a":{ ", " }, "b":{ ", &quo ...
- BZOJ 1579 道路升级 Dijkstra
思路: 这道题 不能把所有边都建出来 会MLE的!!! oh gosh 其实不建所有的边 用的时候再调就行了-.(也没啥区别) //By SiriusRen #include <queue> ...
- PHP写文件到指定位置
<?php $fp = fopen("output.json", "r+"); $flag = fseek($fp, -3, SEEK_END); if( ...