win11&centos7安装Subversion与配置 svn服务端

这里写目录标题

windows

一、下载

  • 服务器端程序版本
    目前Subversion的最新版本是 1.9.0-alpha2,这是一个测试版。官方网站推荐使用的版本是1.8.9,原话是:The best available version of Apache Subversion is: 1.8.9

  • 下载源码包 https://subversion.apache.org/download.cgi
    下载到的文件是:Setup-Subversion-1.8.14.msi

二、Subversion安装与配置

双击运行Setup-Subversion-1.8.14.msi

不整合Apache服务器可以忽略此选项
在这里插入图片描述
在这里插入图片描述

SVN 安装目录不能有中文,和空格:即 Program Files (x86) 不行

空格原因:我在旅投科技 搭建就出问题了 ,半天
5. 安装完成会自动配置Path环境变量,这点比较好

D:\Subversion\bin

所以bin目录下的可执行文件可以在dos任意目录下运行。

6. 验证是否安装成功

在命令行输入:svn --version

看到如下信息就表示服务器端程序安装成功
在这里插入图片描述

三、配置版本库

要先创建、启动服务,再回头创建各个子版本库,否则会报错:unable to connect to repository 期望格式1到6,发现格式8

1. 为什么要配置版本库?
  • 在一个非中文无空格目录下创建一个文件夹,作为版本库的根目录。
    例如:D:\Repository\Subversion
  • 在版本库根目录下创建与具体项目对应的子目录——这样做的目的是使一个SVN服务器能够同时管理多个项目,而不是为每一个项目搭建一个SVN服务器——这显然太浪费资源了。
例如:
  D:\Repository\Subversion\CRM

  D:\Repository\Subversion\ERP

  D:\Repository\Subversion\OA
先创建好文件夹层级目录(子版本库),不要执行版本库命令,回头再来执行
要先创建、启动服务,再回头创建各个子版本库,否则会报错:unable to connect to repository 期望格式1到6,发现格式8
  • 创建版本库

命令格式
在这里插入图片描述
版本库目录结构

版本库创建成功后会在指定目录下产生如下的目录结构
在这里插入图片描述

3.3 启动服务器端程序

①SVN服务器必须处于运行状态才能响应客户端请求,帮助我们管理项目文件。所以我们必须将SVN服务器启动起来。启动SVN服务器有两种方法,一个是命令行方式,一个是注册Windows服务。

②命令行方式

[1]命令格式
在这里插入图片描述

Subversion安装与配置
8
[2]验证服务是否启动

SVN服务监听3690端口,打开一个新的cmd窗口,使用netstat -an 命令查看3690端口是否被监听
在这里插入图片描述
[3]命令行方式的缺陷是:只要运行服务器端程序的命令行窗口一关闭,服务就停止了,很不方便,而且每次开机都需要手动启动。

③注册Windows服务

[1]将SVN服务端程序注册为Windows服务,就可以让SVN服务随系统一起启动,克服了命令行方式的不足。

[2]注册Windows服务需要利用XP、2000以上系统自带工具Service Control,执行文件是sc.exe,注意这个命令不是SVN的命令。

[3]命令格式 depend= Tcpipip 网络层协议 Tcpip
在这里插入图片描述
[4]binpath组成结构说明

在这里插入图片描述
在这里插入图片描述
[5]关于“版本库目录”

在这里插入图片描述
[6]最终命令举例
在这里插入图片描述

在Win7及以上系统中,运行该命令需要管理员权限,否则会得到如下错误提示
在这里插入图片描述
在防火墙或电脑卫士提示阻止时,选择允许

在这里插入图片描述
此时查看当前系统中的服务,可以看到我们刚刚创建的服务,但此时它还没有启动,如果创建失败,需检查sc命令是否正确
在这里插入图片描述

启动此服务

启动服务的命令格式如下:
在这里插入图片描述

打开命令行窗口运行netstat –an查看3690端口是否被监听

如果启动失败,那很有可能是binpath中的内容有错误,此时只能将已经创建的服务删除,重新创建。
在这里插入图片描述

删除服务之前,最好先停止服务。停止服务的命令格式如下:

在这里插入图片描述
删除、启动、停止服务同样需要管理员权限

D:\Repository\Subversion

SVN 安装目录不能有中文,和空格:即 Program Files (x86) 不行
## 自己示例
sc create SVNService binpath= "D:\Subversion\bin\svnserve.exe --service -r D:\Repository\Subversion" start= auto depend= Tcpipip

## LTKJ-示例
sc create SVNService binpath= "C:\MVCC\Subversion\bin\svnserve.exe --service -r D:\repos" displayname= "SVNService" depend= Tcpip start= auto

## 最后启动
sc start SVNService
## 停止、再重新启动
sc stop SVNService
## 创建错了 重来
sc delete SVNService 

C:\Windows\System32>netstat -ano | findstr 3690
  TCP    0.0.0.0:3690           0.0.0.0:0              LISTENING       12244

C:\Windows\System32>

在这里插入图片描述

统一认证、鉴权设置
6. 为了便于管理,将所有版本库的密码和权限设置在同一个文件下面,操作步骤如下:

6.1 取出project1下面conf文件夹下的authz和passwd两个文件到svnroot根目录下面

6.2 修改每个版本库目录conf文件夹下面的svnserve.conf文件, 将

# anon-access = read ,#auth-access = write ,# password-db = passwd,#authz-db = authz 
修改为:

  anon-access = none ,auth-access= write,password-db = ../../passwd,authz-db = ../../authz

   (password-db = ../../passwd,authz-db = ../../authz代表相对路径而非绝对路径)
7. 定义一下几个角色用来测试

7.1 配置管理员(svnadmin),用来管理整个库

7.2 项目经理(manage),用来相关管理文档

7.3 开发人员 (dev),测试开发是否正常

8. 下面添加角色

打开svnroot目录下的passwd文件,创建方法是在[user]下面添加 username = passwd,记得“=”前后的空格,如下图:(svnadmin控制所有项目,统一管理)
在这里插入图片描述

9. 为角色分配权限:假设(quxin是project1的项目经理,huzhixin是project2的项目经理,dev1、dev2是project1的开发人员,dev3、dev4是project2的开发人员,test1是project1的测试人员,test2是project2的测试人员)

LTKJ 库目录及具体权限如下图所示:

库目录权限分组:

[groups]
admin_group = admin
java_group = chenming,majihua,wangl,baosanqing
synthesis_group = wangzhenlong,liweifan,zhouxiaolin,anxiaoming,houdongmei,zhuwanqing
manager_group = yangfule,gehongyan,wangzonghui
pre_sales_group = maxun,tianshunda

具体权限:(根目录下,svnadmin拥有所有权限,其他人只有读权限,要设置子目录权限,

需设置子目录上级的权限方可,设置个别文件权限如下:)


# 指定所有的版本库默认只读,admin_group组可读写
[/]
@admin_group = rw

# 1. 新员工  指定对版本库 develop的 子目录的权限
[develop:/docs]
baosanqing = rw

# 1.指定对版本库 develop 根目录的权限
[develop:/]
@admin_group = rw
@java_group = rw

# 2.指定对版本库 doc 根目录的权限
[synthesis:/]
@admin_group = rw
@synthesis_group = rw

# 3.指定对版本库 doc 根目录的权限
[manager-office:/]
@admin_group = rw
@manager_group = rw
 
# 7.指定对版本库 
[公共:/]
@admin_group = rw
@java_group = rw
@synthesis_group = rw
@manager_group = rw
@pre_sales_group = rw
@financial_group = rw
@marketing_group = rw

启动SVN服务,可在dos命令里启动,也可把SVN服务安装在服务管理里面

把服务在DOS命令里启动方法:svnserve –d –r E:\svnroot

如若把服务安装在服务管理里面,简单的办法,下载一个SVNService.exe文件,放到subversion安装目录的bin文件夹下面,然后在dos命令里运行,

运行方法如下: SVNService –install –d –rE:\svnroot

  1. 安装客户端,连接服务器到要访问的库,假如访问project1:svn://172.16.26.28/project1 ,用同样的方法访问project2,依次类推到更多的版本库项目。

  2. 工具

SVN 服务器端:Subversion 1.5 ,客户端 TrotoiseSVN 1.5

  1. 下载地址:www.iusesvn.com ,你需要注册方可进入下载去下载相关版本的工具。

  2. 相关角色的定义

新员工增加权限

注: 一定要看清 svnserver.conf 指定的鉴权文件的路径是 当前目录 还是公共目录,加了新员工账号密码不生效

1. 新员工 指定对版本库 develop的 子目录的权限 authz 文件内

[develop:/docs]
baosanqing = rw

问题 svn show log查看失败

在这里插入图片描述

解决办法如下
1.对服务器SVN做以下修改:

(1)找到你SVN版本库下conf文件夹下的svnserve.conf文件;

(2)打开svnserve.conf文件,将其中名为anon-access的一项设置为 anon-access = none。

这样的话,日志文件即可显示正常。

2.对于第一种方案,需要专门修改服务器的配置,但是一般服务器不会迁就客户端去修改配置,这时需要我们重新安装和服务器配套的svn客户端版本,一般是svn版本过高导致

四、SVN 忽略不需要提交的文件

我使用的是 TortoiseSVN,每次提交到svn上的时候我不想提交 .idea 文件夹,不需要列出,服务器也不需要存。因为是编译器的文件,多人维护项目时,总会显示修改。最好的避免类似问题的方法是添加参考文件到该项目的忽略列表。这样就不会出现在提交对话框中。

一、方法一

1、文件夹空白处右键 TortoiseSVN → Properties 打开

在这里插入图片描述

2、New → Other
在这里插入图片描述
3、global-ignores属性的值,即需要要忽略的文件 点击OK

在这里插入图片描述
在这里插入图片描述

4、 提交svn目录属性,这样下次提交的时候就会忽略 .idea 文件
在这里插入图片描述

5、取消忽略的文件 选中 Rmove ,提交就可以看到idea文件了

二、方法二 适合单个模块 或单个文件夹下, 本地修改配置,不想上传: ltkj-generator 模块

1、右键一个未加入版本控制文件或目录,并从弹出菜单选择TortoiseSVN →Add to Ignore List→ .idea
在这里插入图片描述
2、 提交到svn 上 下次再提交就不会出现 .idea 文件了
在这里插入图片描述

先D盘提交一次之后 , 关闭-打开 idea 发现 已经忽略了xxxx模块的修改

在这里插入图片描述

3、取消忽略 鼠标右键 TortoiseSVN →Remove from Ignore List→ .idea

在这里插入图片描述

4、提交时就可以看见了
在这里插入图片描述

三、忽略文件

例如:idea或eclipse的配置文件 、日志文件、 编译目录、打包目录、编辑器备份目录都可以忽略 。

规则如下:

.idea
*.iml
.settings
.project
.classpath
target
out
bin
classes
*.bak 
*.log
四、svn:ignore、global-ignores区别:

svn:ignore:只对当前目录有效, 对子目录无效;
svn:global-ignores:会对子目录产生递归影响;

centos7 安装svn服务端

二、安装

在这里插入图片描述

首先检测服务器是否安装svn,  如果安装 小于1.7  可先卸载

[root@localhost ~]# svnserve --version       //查看svn版本信息
[root@localhost ~]# yum remove subversion        //svn卸载命令

# 安装 
[root@localhost ~]# yum install -y subversion

在这里插入图片描述

三、建立版本库

subversion默认以/var/svn作为数据根目录,可以通过/etc/sysconfig/svnserve修改这个默认位置。
在这里插入图片描述

接下来进入指定目录/data 创建一个svn目录, 然后在svn目录下创建一个名为repos的版本库

创建 仓库的根目录(auth配置文件的"/" 所指

[root@localhost ~]# mkdir -p /data/svn
[root@localhost ~]# svnadmin create /data/svn/repos

[root@localhost ~]#  ll /data/svn/repos
总用量 8
drwxr-xr-x 2 root root  54 6月   5 23:40 conf
drwxr-sr-x 6 root root 233 6月   5 23:40 db
-r--r--r-- 1 root root   2 6月   5 23:40 format
drwxr-xr-x 2 root root 231 6月   5 23:40 hooks
drwxr-xr-x 2 root root  41 6月   5 23:40 locks
-rw-r--r-- 1 root root 229 6月   5 23:40 README.txt
[root@localhost ~]#

下面有其他目录文件,就意味着你的版本库创建好了,我们进入版本库repos目录下的conf目录进行相关配置,如下图所示
在这里插入图片描述

四、配置 参考 windows

4.1 编辑passwd,添加用户:

[users]
wangl = wangl
chenming = chenming
majihua = majihua
zhouchicheng = zhouchicheng

dev1 = 123456
dev2 = 123456
dev3 = 123456
dev4 = 123456

4.2 编辑authz,添加用户:
[/]:表示根目录,即 /data/svn

[ltkj@ecs-2a35-0721176 conf]$ cat authz 
[aliases]
# joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average

[groups]
master = chenming,wangl
fronter = zhouchicheng
developer = dev1,dev2,dev3,dev4,dev5,dev6

[/]
@master = rw
# &joe = r
# * =

[repos:/]
@master = rw
@developer = rw
# * = r
anon-access = none:表示禁止匿名用户访问。

auth-access = write:表示授权用户拥有读写权限。

password-db = passswd:指定用户名口令文件,即 passwd 文件。

authz-db = authz:指定权限配置文件,即 authz 文件。

realm = /data/svn :指定认证域,我这里设置的 /data/svn 目录。

4.3 编辑 svnserve.conf 文件(注意:配置的前面不能有空格,一定要顶格写)

[ltkj@ecs-2a35-0721176 conf]$ cat svnserve.conf 
[general]
anon-access = none
auth-access = write

### Uncomment the line below to use the default password file.
password-db = passwd
authz-db = authz

=======================================================
4.4 开启命令

svnserve -d -r /data/svn   //到具体的版本库 repos的上一级, 及所谓的版本库根目录 "/"

五、设置开机自启动


vim /etc/sysconfig/svnserve

将默认目录指定到    /data/svn

OPTIONS="-r /data/svn"


设置开机自启动
systemctl enable svnserve

重启验证:
netstat -tunlp | grep 3690

其他可能用到的命令---------------------------------
启动svnserve服务
systemctl start svnserve
 
查看3690 端口是否正常
 netstat -ntlp  | grep 3690



停止开机自启动
systemctl disable svnserve.service
 
查看服务当前状态
systemctl status svnserve.service
 
重新启动服务
systemctl restart svnserve.service

六、防火墙和阿里云服务器 安全组配置

七、测试svn

去svn官网 下载svn客户端 自行下载,并测试是否可以使用,此处不做过多描述 下载链接: https://tortoisesvn.net/downloads.html
在这里插入图片描述

八、创建钩子 使版本库代码 可以同步到web根目录

我们用svn客户端可以使本地代码上传到svn版本库,但是为了开发方便,我们应该使版本库代码实时同步到我们的web根目录,这就是钩子的作用

1.首先我们进入/home/svn/blog/hooks目录下,如下图所示

使用 cp post-commit.tmpl post-commit将post-commit.tmpl 复制一份

然后打开post-commit文件 清空所有内容 粘贴如下代码,//以及后面内容是注释 不要粘贴

#!/bin/sh
export LANG =en_US.UTF-8
SVN=/usr/bin/svn
WEB=/www/wwwroot/blog //是你想要同步的web根目录
$SVN update $WEB --username ‘chaoyang’ --password ‘123456’ --no-auth-cache
//chaoyang 指的前面创建的svn账号 123456指的密码
保存退出之后 给post-commit一个775权限

chmod 775 post-commit
接下来我们进入网站根目录(此处指 /www/wwwroot )并运行如下代码

svn co svn://你的ip/blog
运行之后会让你输入 root的密码 svn账号密码 然后选择yes就完事了

接下来重启svn

killall svnserve //杀死svn服务
svnserve -d -r /home/svn //启动svn服务 home目录下的svn
接下来就测试了 你在本地svn客户端添加一个文件 然后 你去看看你相应的web目录 神奇了也有了你添加的文件 此时web代码同步就算大工告成了

基于Subvision 做服务器,tortoisesvn使用步骤和trunk,branch,tag详细说明(代码片段)

也是跟 VisiualSVN 服务器一样 需要trunk branck tag 三个文件夹来存放 项目代码 。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

安装及下载client 端
下 载Windows 端程序:http://tortoisesvn.net/downloads。

更新至特定版本

有时我们需要回溯至特定的日期或是版本,这时就可以利用SVN的Update to revision的功能。在想要更新的档案或目录icon上面按下鼠标右键。并且选择TortoiseSVN->Update to revision。

图像:Tsvn_22.png图像:Tsvn_23.png

在这个Update窗口中,您可以选择更新到最新版本(HEAD)。也可以选择更新到某个指定的版本(Revision)。当然,您可能早就记不起来正确的版本号码。可能只隐约的记得大概在什么时间。没关系,按下Show log按钮,您就可以回顾历史了。

图像:Tsvn_24.png

所有您曾经做过的动作,及其日期与对应的版本都会列在这个窗口上面,只要在你想要的版上面点一下,让他变成反白,然后按下OK。这个版本就会自动填入Update窗口中的Revision字段中。您只要再按下一次OK,这个版本就会被取出来到您的硬盘中。

复制档案及目录

很多时候您会希望有另外一个复制的目录来进行新的编修。等到确定这个分支的修改已经完毕了,再合并到原来的主要开发版本上。举例来说,我们目前在working copy下面有如下的目录及档案:

图像:Tsvn_25.png

现在,我们要为trunk这个目录建立一个branch。假设我们希望这个目录是在D:\working\my_prj\branch \my_new_branch_for_testing。首先我们可以在trunk目录下面的空白处,或是直接在trunk的icon下面按下鼠标右键。

在这里插入图片描述

在选择Branch/Tag…这个项目后,您将会看到如下的对话框出现。

图像:Tsvn_27.png

请先确认From WC at URL: 中的目录是您要复制的来源目录。接着,在To URL中输入您要复制过去的路径。通常我们会将所有的branch集中在一个目录下面。以上面的例子来说,branch档案都会集中在branch的子目 录下面。在To URL中您只需要输入您要的目录即可。目录不存在时,会由SVN帮您建立。特别需要注意的是SVN因为斜线作为目录分隔字符,而非反斜线。

接着在Log message输入您此次branch的目的为何。按下OK就可以了。

如果成功,将可以看到下面的画面:

在这里插入图片描述

按下OK就可以关闭这个窗口了。如果您此时立刻去working copy的branch子目录下面,您将会失望的发现在该目录下面并没有刚刚指定的目录存在。这是因为您working copy的部份还是旧的,您只需要在branch子目录下面进行SVN update就可以看到这个新增的目录了。新增的目录就与原来的目录无关了。您可以任意对他进行编辑,一直到您确认好所有在branch下面该做的工作都 完成后,您可以选择将这个branch merge回原来的trunk目录,或者是保留它在branch中。

要merge回trunk目录中,方法很简单。以上面的例子来说,我们在D:\working\my_prj\trunk目录空白处,按下鼠标右键,选择Merge:

在这里插入图片描述

接着可以看到如下的画面:

图像:Tsvn_30.png

这个画面主要分为三个部份,前面的From: 与 To: 是要问您打算从Branch中的哪个版本到哪个版本,merge回原来的trunk目录中。因此,From跟To的URL字段应当都是指定原来 branch的目录下。剩下的就是指定要merge的revision范围。以上面的例子而言,我们从Branch的Revision 7开始merge到Branch下面的最新版本。您可以透过,Dry run按钮,试作一次Merge。这个merge只会显示一些讯息,不会真正的更新到trunk的目录去。只有按下Merge按钮后,才会真正的将 branch的档案与trunk的档案合并起来。

在这里插入图片描述

上面的讯息告诉我们在trunk目录下面的yyyy.cpp及xxx1.cpp已经被更改过了。如果您在现在到trunk目录下,会看到这两个档案处于被修改的状态。

图像:Tsvn_32.png

如果您确认这次的merge没有问题,您可以直接使用commit来将这两个被修改的档案commit回SVN repository上。如果有问题,您可以直接修改这两个档案,直到确认ok了,再行commit。

在这里插入图片描述
在这里插入图片描述

一切顺利的话,您就成功的将branch的档案merge回trunk了。

制作Tag或是Release

所谓的Tag或是Release就是一个特别的版本,因为这个版本可能有特别的意义。例如:这个版本是特别的Milestone或是release 给客户的版本。其实,Tag与Release的作法与Branch完全相同。只是Branch可能会需要merge回原来的trunk中,而tag及 release大部分都不需要merge回trunk中。举例来说,今天我们的trunk做了一版,这个版本被认定是软件的1.0版。1.0版对于开发来 说是一个非常重要的里程碑。所以我们要特别为他做一个标记,亦即Tag。假设,这个 1.0版是要正式release给客户或是相关vendor,我们要可以为他做一个Release的标记。基本上,SVN只有目录的概念,并没有什么 Tag的用法。所以您会看到再SVN的选单上面,Branch与Tag是同一个项目。以这个1.0的例子来说,我们就是在Trunk上面,按下鼠标右键, 选择Branch/Tag的项目:

图像:Tsvn_36.png图像:Tsvn_37.png图像:Tsvn_38.png
在这里插入图片描述
在这里插入图片描述

成功的话,您就在Tag目录下面建立了一个1.0的目录。当然,如果您这时到Tag的目录下面去,会看不到这个目录,您需要在Tag目录下面update一下,才能看到它。

图像:Tsvn_39.png图像:Tsvn_40.png

制作Release的作法与Tag完全相同。只是把Tag的目录换成Release而已。

看到这里,相信大家都已经领悟到无论是Branch,Tag或是Release都只是将指定的 Trunk版本复制一份到另外一个目录去。至于这个目录要叫Branch还是叫Release,SVN根本就不管。所以,您也可取其它的目录名称。不 过,Branch,Tag及Release已经是SVN上面约定成俗的名称。所以,除非您知道自己为何这样做,否则,最好还是follow这个命名原则, 以免后面新加入的人看不懂。

NOTE:同样的道理Trunk也只是一个约定成俗的名称。不一定要叫Trunk。只是大家看到Trunk目录就会知道这里面放的是主要的开发主干。

快速参考

在后面的说明,皆以d:\working当作工作目录。您可以将他换成其它任何您想要的目录。

取得(Checkout)Repository

开启档案管理员,进入d:
在档案管理员空白处按下鼠标右键,选择SVN Checkout
在Checkout对话框中,
URL of repository:repository的位置。
Checkout directory:要存放working copy的地方。
若d:\working目录不存在,SVN会问您要不要建立这个目录,请选择Yes。
接着按下OK,即可checkout该目录。
图像:Tsvn_41.png

更新(Update)档案或目录

在您要由repository更新至working copy的档案或是目录的icon上面按下鼠标右键。选择SVN Update即可。
如果是要更新至特定的版本,则选择TortoiseSVN->Update to revision。并且在Update对话框中的Revision字段输入您要的版本。也可以透过Show Log按钮来查看版本的信息。
新增(Add)档案或目录
在尚不属于repository的档案或目录的icon上按下鼠标右键。选择TortoiseSVN->Add。
选取要新增的档案。
按下OK。
图像:Tsvn_42.png

NOTE:新增的档案要经过提交(Commit)的动作才回真正的放入Repository中。
提交(Commit)修改过的档案或目录
在修改过的档案,或是在整个目录的空白处按下鼠标右键。
勾选真正要提交至Repository的档案或目录。
输入本次提交的纪录讯息(Message)。这个讯息应该要清楚明了,但不应过份简单。以利日后版本追踪。
按下OK。
图像:Tsvn_43.png

Copy/Tag/Branch/Release档案或目录

确认您要处理的档案或是目录已经是Repository中最新的版本。
在要处理的目录或是档案上面按下鼠标右键,选择TortoiseSVN->Branch/Tag。
在To URL处输入您要的目的地。
branch:要产生一个分支。以区别与trunk不同的开发。
tag:要形成一个标记,表示重要的milestone。
release:表示一个已经正式的release的纪录。
其它:进行一个复制(copy)。
图像:Tsvn_44.png

【SVN】windows SVN安装使用教程(服务器4.3.4版本/客户端1.11.0版本)

步骤:

1、下载和搭建SVN服务器

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

注意:可以选择安装路径,仓库路径,备份路径(不一定非要在c盘)

在这里插入图片描述
在这里插入图片描述

点击install,进入如下图的安装

在这里插入图片描述

点击finish就下载完了

2、建立用户和组,以及权限的分配

安装完成后,启动VisualSVN Server Manager

可以在窗口的右边看到版本库的一些信息,比如状态,日志,用户认证,版本库等.
要建立版本库,需要右键单击左边窗口的Repositores,如下图:

在这里插入图片描述
在弹出的右键菜单中选择Create New Repository 或者 新建->Repository: 两者都一样。

在这里插入图片描述
在这里插入图片描述

可以随意取名字,或者你项目的名字

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

新建用户

在VisualSVN Server Manager窗口的左侧右键单击用户组,选择Create User或者新建->User,如图:
在这里插入图片描述

点击user,进入下图:
在这里插入图片描述

填写Username和password后,点击ok按钮,可以看到以下界面(下图为刚刚创建的用户)

在这里插入图片描述

新建组

建立用户组,在VisualSVN Server Manager窗口的左侧右键单击用户组,选择Create Group或者新建->Group,如图:
在这里插入图片描述

在这里插入图片描述

点击上面的【Add】按钮后,如下图
增加test1到组中(如果有多个用户,操作一样)。
在这里插入图片描述在这里插入图片描述

权限的分配

右击myRepository,点击Properties
在这里插入图片描述

点击add添加用户的权限

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

三:客户端TortoiseSVN安装

————————————————
2、 注意:出现这个界面的时候,需要点击红色的地方,选择第一个选项安装命令行

在这里插入图片描述

如上图箭头所示,在安装 TortoiseSVN 的时候,默认 command line client tools,是不安装的,这里建议勾选上。

只有安装了该选项,idea中才可以使用SVN,才会有svn.exe文件

3、再一直下一步!!
4、中文安装包
在这里插入图片描述
6、如果勾选了命令行,可以在cmd中查看svn命令行是否安装成功
在这里插入图片描述

四、一些基本操作

1、在服务端获取svn检出的地址
打开服务端,右击myRepository,点击copy URL to Clipboard,即可复制路径了

在这里插入图片描述
2、检出
在这里插入图片描述

SVN 创建资源库后,再更换 ip 或端口,

  1. server 端
  2. client 端 Relocate…
    在这里插入图片描述

SVN 地址变更

svn服务地址改变了,只需重新relocate:

在这里插入图片描述
如果Relocate…时报错:
4.错误信息:错误svn: The repository at ‘svn://xxxxx’ has uuid ‘XXXX’, but the WC has 'XX
在这里插入图片描述

解决方案:

            1.cd 项目目录/.svn

            2.编辑wc.db文件,通过搜索原uuid找到文件中的uuid,全部替换。

————————————————
在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值