在阿里云服务器上搭建 SVN 服务端

一、SVN 服务端搭建流程

1、安装 svn

apt-get install subversion
// 方式二:yum install subversion 

ps:查看版本

svnserve --version

2、创建版本库

先建目录

mkdir /usr/xq/svn

创建版本库

svnadmin create /usr/xq/svn

在阿里云服务器上搭建 SVN 服务端_第1张图片

subversion目录说明:
- db目录:就是所有版本控制的数据存放文件
- hooks目录:放置hook脚本文件的目录
- locks目录:用来放置subversion见艰苦锁定数据的目录,用来追踪存取文件库的客户端
- format文件:是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号
- conf目录:是这个仓库的配置文件(仓库的用户访问账号、权限等)

cd进入conf目录(该svn版本库的配置文件):
- authz文件是权限控制文件
- passwd是帐号密码文件
- svnserve.conf SVN服务配置文件

3、配置文件

设置帐号密码 vi passwd
在阿里云服务器上搭建 SVN 服务端_第2张图片
ps:格式为:用户名 = 密码

设置权限 vi authz
在阿里云服务器上搭建 SVN 服务端_第3张图片

修改svnserve.conf文件 vi svnserve.conf
打开下面的几个注释:

anon-access = read              # 匿名用户权限(none为不给权限)
auth-access = write             # 授权用户权限
password-db = passwd            # 使用哪个文件作为账号文件
authz-db = authz                # 使用哪个文件作为权限文件
realm = My First /usr/xq/svn    # 认证空间名,版本库所在目录

在阿里云服务器上搭建 SVN 服务端_第4张图片

4、启动svn版本库

svnserve -d -r /usr/xq/svn

ps:停止SVN命令

killall svnserve

ps:查看服务是否开启

ps -ef |grep svn

在阿里云服务器上搭建 SVN 服务端_第5张图片

二、在windows上测试时可能会出现的问题

1、Unable to connect to a repository at URL ‘svn://xxxxxxxxx’

在阿里云服务器上搭建 SVN 服务端_第6张图片

SVN的默认端口是3690,网上有很多打开Ubuntu3690端口的方法,但是还是没有用,其实是要设置阿里云服务器 ECS 中实例的“本实例安全组”才行:

在阿里云服务器上搭建 SVN 服务端_第7张图片

在阿里云服务器上搭建 SVN 服务端_第8张图片

2、Authorization failed

在阿里云服务器上搭建 SVN 服务端_第9张图片

之所以会出现这种情况,是因为配置 authz 时少写了这里的“[/]”

在阿里云服务器上搭建 SVN 服务端_第10张图片

ps:设置[/],代表根目录下所有的资源,如果要限定资源,可以加上子目录

3、URL ‘svn://xxxxxxxxx’ doesn’t exist

在阿里云服务器上搭建 SVN 服务端_第11张图片

这个原因是:

直接指定“svn://xxxxxxxxx”就行,不用指定到详细文件路径,因为配置启动svn服务时,就已经自动关联。

三、项目代码上传

笨方法:AndroidStudio新建空白项目 –》右键 TortoiseSVN 选择 Import –》起个项目文件夹名字
在阿里云服务器上搭建 SVN 服务端_第12张图片
–》输入用户名和密码 –》提交 –》删除原项目 –》SVN Checkout –》AndroidStudio 导入 Checkout 的项目 –》协同开发


参考文章:
https://help.aliyun.com/document_detail/52864.html
https://www.cnblogs.com/xiaochina/p/6901552.html
http://blog.sina.com.cn/s/blog_4b93170a0100leb2.html

你可能感兴趣的:(Android,svn,阿里云,协同开发)