ubuntu 搭建svn服务器

1、安装Subversion

sudo apt-get install subversion

 

2、创建资源库

cd /home/username/

svnserve -d -r /home/username/               (第一步:先启服务器, 后台模式[-d], svn服务的目录[-r])

svnadmin create repos                              (第二步:再建仓库)

 

 注意:若要启动两个svn服务器,则要指明端口,默认的服务器端口是3690。
     svnserve -d -r /home/username   (等价于)    svnserve -d  --listen-port=3690  -r /home/username

    若 要启动第二个服务器,则可svnserve -d  --listen-port=3691  -r /home/username2,但同时后面在 checkout时要指明第二个服务器 的端口,如  svn co svn://192.168.1.1:3691/repos

3、修改用户名密码 (第三步:建完仓库设权限)

修改/home/username/repos/conf/svnserve.conf,把下面三行的注释#去掉

anon-access = read (匿名访问只能读权限,可设置为none)

auth-access = write   (认证用户拥有写权限

password-db = passwd  (认证的用户名密码保存的文件名)

 

修改/home/username/repos/conf/passwd,添加用户和密码

格式如下:

用户名 = 密码

user1 = 123123

 

4、导入project                                                    (第四步:权限设完导文件)

svn import -m "刚创建的项目" /home/username/work/test svn://192.168.1.1/svn/repos/test

     注意:导完文件(包含目录)后,就与原始导入目录/home/username/work/test无关,即“过河拆桥”。 因此,本地客户端使用也需要下面的步骤。

 

5、导出project

     说明:其实,该步骤属于客户端的操作,写在这里是因为假如你只是搭建一个供你自己在本地使用的svn服务器,那么你的机器既是svn服务器,又是svn客户端。你若要在本地同步svn服务器的数据的话,也要执行checkout等客户端命令。 

svn co svn://192.168.1.1/repos/test    <=>  svn co svn://192.168.1.1:3690/repos/test

     ok,可以用了!checkout不需要认证,checkin需要。 
     这是使用Subversion自带的svn协议和svnserve工具简单的搭建svn服务器,还可以结合Apache搭建http://和 https://协议的svn服务器及安装Trac。

 

服务开机启动

在init.d目录建立一个脚本文件svnd.sh

cd /etc/init.d

emacs svnd.sh

输入svnd.sh内容如下(/var/svn为svn安装目录)

#!/bin/bash

#svnserve startup

svnserve -d --listen-port 3690 -r /home/username/svn

 

然后执行

update-rc.d svnd.sh defaults

chmod 777 svnd.sh

原文地址:https://www.cnblogs.com/chen-lhx/p/5805716.html