Linux (Ubuntu)安装svn

1 先查看是否已经安装了svn

如果没有安装svn则:

ubuntu@ip-172-31-29-46:~$ svn --version
The program 'svn' is currently not installed. You can install it by typing:
sudo apt-get install subversion

如果已经安装svn则提示svn版本号:

cfj@cfj-virtual-machine:~$ svn --version
svn,版本 1.9.7 (r1800392)
   编译于 Mar 28 201808:49:13 在 x86_64-pc-linux-gnu

Copyright (C) 2017 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/

2 ubuntu安装svn:

先更新一下(可选)

sudo apt-get update

在线安装命令:

sudo apt-get install subversion

3 创建版本库

在/opt/下面用mkdir命令创建目录svn以及子目录repository。目录结构: /opt/svn/repository

更改更改repository文件夹的权限 改为777

sudo chmod -R 777 /opt/svn/repository

将刚刚创建的目录利用svn命令指定为版本库:

sudo svnadmin create /opt/svn/repository

设置完成之后在repository下面会生产几个文件夹和文件

主要的配置文件在conf文件夹下面:svnserve.conf,passwd,authz 

 4 修改repository文件夹下面的内容,完善配置

  • 首先修改db文件夹的权限,改为777。db文件夹是存储svn文件的地方
sudo chmod -R 777 /opt/svn/repository/db

 

  • 其次修改con文件夹下面的svnserve.conf文件
ubuntu@ip-172-31-29-46:/opt/svn/repository$ cd conf
ubuntu@ip-172-31-29-46:/opt/svn/repository/conf$ sudo vi svnserve.conf

 #匿名用户可读

anon-access = read(可改成none,即不可读)

#权限用户可写
auth-access = write
#密码文件为passwd
password-db = passwd
#权限文件为authz
authz-db = authz

去掉前面的#,并且顶格,不然可能会报错

  • 再者修改con文件夹下面的passwd文件,增加用户和用户密码

格式:用户名=密码(明文)

sudo vi passwd

以上设置用户为admin密码为admin

  •  最后修改con文件夹下面的authz文件,增加用户组,目录认证,组权限
sudo vi authz

 

 

如果组内有多个人可以逗号分隔如:组名owner,组员user1,user2则:owner=user1,user2

对组的访问权限设置:rw,r,w。组名前面加@

@owner=rw

如果单用户设置则一个用户一行:

user1=rw

 

 单库模式则设置为:[/] 本例子为单库模式

 

5 启动svn版本库

svnserve -d -r /opt/svn/repository

-d:表示在后台运行 ,-r:指定服务器的根目录

启动之后可以查看进程:

ubuntu@ip-172-31-29-46:/opt/svn/repository/conf$ ps -ef|grep svnserve
ubuntu   12593     1  0 13:37 ?        00:00:00 svnserve -d -r /opt/svn/repository
ubuntu   12595 11736  0 13:37 pts/0    00:00:00 grep --color=auto svnserve

如果需要停止,则kill -9 进程号

查看端口号,默认端口3690

sudo netstat -ntlp

 

6 访问:通过svn://服务器ip/文件夹名字 从svn客户端访问服务器。默认svn协议。如果要配置http或者https则需要安装apache。

本例因为是设置的[/],则svn://ip地址/

就可以访问

 

注意:如果是阿里云或者亚马逊的服务器,可能svn端口号没有对外开通,需要在控制台中配置。

 

参考:

https://blog.csdn.net/sm_wang/article/details/78656120
http://www.runoob.com/svn/svn-start-mode.html
https://blog.csdn.net/u011781521/article/details/54981945
http://wiki.ubuntu.org.cn/SubVersion#.E7.9B.B4.E6.8E.A5.E8.AE.BF.E9.97.AE.E6.96.87.E4.BB.B6.E4.BB.93.E5.BA.93.28file:.2F.2F.29

posted @ 2018-09-20 12:04  kaixinmao1987  阅读(23343)  评论(0编辑  收藏  举报