SVN版本服务器搭建

发布时间 2023-06-01 10:15:52作者: 阿风小子

SVN 的下载地址如下

http://tortoisesvn.net/downloads.html

【1】使用SVN,首先要安装TortoiseSVN,就是上面的SVN下载地址。

【2】 安装VIsualSVN。

=======================================

VisualSVN Server 的安装目前最新版本是4.0.0

一 Visual SVN的安装非常的简单,
【1 】几乎都是下一步。

【2】 选择 visualVSN服务器和管理控制台 或只有管理控制权限

 

【3】选择程序安装的路径、Subversion Repository(库)的路径和所使用的协议和端口。

 

 

你可以选择HTTP和HTTPS两种协议,如需使用svn协议也非常的方便,在1.4版本后,Subversion加入了Service运行的功能。端口号可以任意定义。对于HTTPS的端口号默认可以选择443和8443,对于HTTP默认可以选择80、8080和81。

个人偏向于使用HTTPS的8443端口,原因很简单HTTPS安全性比较高,虽然443端口是标准HTTPS端口,但如果做WEB开发那肯定就有麻烦,同时Skype也会使用这个端口进行某些通讯。

还有就是下面的用于验证的身份,一个是windows验证,一个是Subversion身份验证

这里默认是Subversion身份验证。

【4】接着就是复制文件的过程。

 

 

【5】安装完成后会询问你是否需要运行VisualSVN Server Manager(一个非常有用的管理工具)

 

【6 】打开“ VisualSVN Server Manager ”,如下:

 

二 下面就说 VisualSVN Server的配置和使用方法【服务器端】

修改URL:

 

 

查看IP命令:

   cmd             ipconfig

下面我示范添加一个代码库【Repository】,如下图:

 

点击Repository右键

 

按上图所示,创建新的代码库,在下图所示的文本框中输入代码库名称:

 

 

注意:上图中的CheckBox如果选中,则在代码库StartKit下面会创建trunk、branches、tags三个子目录;不选中,则只创建空的代码库StartKit。

点击OK按钮,代码库就创建成功了。

创建完代码库后,没有任何内容在里面

 

下面,我们开始安全性设置,在左侧的Users上点击右键:

 

输入上面的信息,点击OK,我们就创建一个用户了。按照上面的过程,分别添加用户其他用户就可以了。

下面我们开始添加这些用户到我们刚才创建的项目里。

点击刚才创建的库,Lenovo,右击选择属性(Properties)

 

点击上图中的"Add..."按钮,在下图中选择我们刚才添加的用户,

 

 

注意这里的权限设置,要选择好。

 

 

linux:   https://blog.csdn.net/zeqiao/article/details/78792347

 

一、SVN 服务端搭建流程
1、安装 svn
apt-get install subversion
// 方式二:yum install subversion
ps:查看版本

svnserve --version
2、创建版本库
先建目录

mkdir /usr/xq/svn
1
创建版本库

svnadmin create /usr/xq/svn

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

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

3、配置文件
设置帐号密码 vi passwd

ps:格式为:用户名 = 密码

设置权限 vi authz


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

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


4、启动svn版本库
svnserve -d -r /usr/xq/svn
1
ps:停止SVN命令

killall svnserve
1
ps:查看服务是否开启

ps -ef |grep svn
1


二、在windows上测试时可能会出现的问题
1、Unable to connect to a repository at URL ‘svn://xxxxxxxxx’


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

 


2、Authorization failed


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

 

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

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


这个原因是:

 

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

三、项目代码上传
笨方法:AndroidStudio新建空白项目 –》右键 TortoiseSVN 选择 Import –》起个项目文件夹名字

–》输入用户名和密码 –》提交 –》删除原项目 –》SVN Checkout –》AndroidStudio 导入 Checkout 的项目 –》协同开发

参考文章:
https://help.aliyun.com/document_detail/52864.html
https://www.cnblogs.com/xiaochina/p/6901552.html

点击"确定"按钮,上面的用户就具有了访问StartKit代码库的不同权限。

=======================================

三、签入源代码到SVN服务器
假如我们使用Visual Studio在文件夹lenovo中创建了一个项目,我们要把这个项目的源代码签入到SVN Server上的代码库中里,首先右键点击lenovo文件夹,这时候的右键菜单如下图所示:选择copy URL toCLipboard,就是复制统一资源定位符(URL)到剪贴板中

然后再电脑的空白处单击右键,选择小海龟的图标/ 导出

之后弹出对话框,将刚出的地址粘贴到第一个地址栏中

之后再选择好输出目录,点击确定。会弹出输入用户名和密码的对话框,而且会在你选择的导出目录处新建一个lenovo文件夹。

输入刚才创建的用户名和密码。确定,然后会弹出检出界面。