在一台服务器上搭建多个项目的SVN

时间:2024-10-15 18:06:56

需求:一台机子,多个项目,项目之间用户独立不可以相互访问文件

思路:在机子上设置多个代码仓库,用不同的端口号加一区分

实现:

首先安装SVN,我这里使用的是TortoiseSVN

首先创建多个SVN代码仓库,具体操作是,创建一个空的文件夹,【右键】-》TortoiseSVN-》【在此创建版本库】,有多少个项目就创建多少个这样的文件夹,创建好的效果如下

在一台服务器上搭建多个项目的SVN

之后进入到这些刚刚创建好的文件夹中,找到/conf/svnserve配置文件,使用记事本编辑,将第十九行和第二十行修改成这样(原本是注释掉的)

anon-access = none
auth-access = write

意思是游客不可以读写访问,登录用户可以给予写的权限,之后修改27行,改为password-db = passwd,意为使用密码(应该是使用名叫passwd文件中配置的密码,本行原本是注释掉的)

之后我们打开同一个目录想的passwd文件,在[users]下写入用户名密码,这是用来访问svn时要用到的,等号左边是用户名,右边是密码,这个用户只对当前SVN版本库有关,是不可以登录同一台机子上的其他SVN版本库的

其他几个版本库也是如此,创建好了之后我们就可以通过CMD来启动这些SVN了,首先进入到TortoiseSVN软件目录下的bin目录,cd C:\Program Files\TortoiseSVN\bin,之后启动svnserve

svnserve -d -r c:/SVN你的版本库 --listen-port 81,这句话的意思是启动c:/SVN你的版本库的这个版本库,它的监听端口是81,到时候访问这个版本库就直接用当前ip加端口号即可

其他几个版本库与之类似。如图

在一台服务器上搭建多个项目的SVN

接下来我们来在客户端访问这个SVN,首先在客户机新建一个空文件夹,右键-》【SVN检出】在版本库URL中输入svn://当前服务器的ip地址:对应的端口号

接下来会提示要你输入用户名密码,输入对应项目的用户名密码即可。