svn版本管理工具使用教程

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a5252145/article/details/84979418

SVN使用教程

目录

1.如何下载svn工具
2.如何安装服务端
3.使用服务端创建版本仓库
4.安装TortoiseSVN
5.使用TortoiseSVN工具
6.TortoiseSVN其他操作

1.如何下载svn工具

工具要使用两个:
服务端:Subversion
客户端:TortoiseSVN

Subversion 官网:http://subversion.apache.org/download/   

进去之后往下找,看自己是什么系统就选择对应的版本即可。

TortoiseSVN 官网:https://tortoisesvn.net/  可以选择中文,如下图:

在这里插入图片描述

咱们这里使用的是
Subversion:1.8
TortoiseSVN:1.11.0

2.如何安装服务端

q.如何安装

服务端: Subversion
下载好之后 Setup-Subversion-1.8.11.zip
解压出来,Setup-Subversion-1.8.11.msi
双击安装,一路next即可,如下图:在这里插入图片描述

q.如何检测安装成功

cmd 执行:svnadmin
cmd 执行:svnserve

如下图,即是安装成功。
在这里插入图片描述

3.使用服务端创建版本仓库

q.如何创建?   我们要记住一个项目一个仓库原则!!!

	先创建一个空的文件夹(热议任意地方)
	我是在D:\myFiles\svn\repository
	然后在此处打开dos窗口(shift+右键快速打开),然后运行dos命令:

svnadmin create D:/myFiles/svn/repository

结果: repository下有默认文件如下:

在这里插入图片描述

q.如何修改配置
	第一步,创建好之后,在conf文件夹下:
	
	svnserve.conf
		anon-access = none  (第19行)  //表示任意用户可以操作,不验证用户身份
		auth-access = write   (第20行)//写文件功能
		password-db = passwd  (第27行) //打开密码功能
		authz-db = authz  (第36行) //打开用户名功能
		
	password文件   用户名和密码
		[users]下添加三个用户:
		admin = 123456
		taohang= 123456
		lisi = 123456

在这里插入图片描述

authz文件 每个用户功能设置   如下图
	[groups]下添加
	[/]
	admin= rw      
	[/th]
	taohang = rw
	lisi = r

其中
[/]表示:默认地址,之后客户端url中要用
r:读取文件功能
d:写文件功能
rd:读写文件功能

在这里插入图片描述

q.启动版本仓库  在cmd中执行
	svnserve -d -r D:/myFiles/svn/repository

执行之后,发现什么也没有,哈哈,恭喜你,成功打开了!
在这里插入图片描述

服务端到此结束了,开启客户端之旅吧!

4.安装TortoiseSVN

q.如何安装??

客户端: TortoiseSVN
TortoiseSVN-1.11.0.28416-x64-svn-1.11.0.msi
双击安装,也是没啥操作性(这里第二步,要把第二个选项选上,也就是点开,选择安装,它表示启动命令行工具,最好装上,最后 Show changelog 不要勾选,直接finish),安装完之后是英文版的,可以在官网下载它的中文安装包(LanguagePack_1.11.0.28416-x64-zh_CN.msi),也是双击安装,之后进去,如下图,就可以变成中文了:
在这里插入图片描述

咱们这里使用英文版进行教学。

q.如何检测安装成功?
	任意文件夹内右键,看有没有出现  SVN Checkout和TortoiseSVN,如下:

在这里插入图片描述

5.使用TortoiseSVN工具

q.如何浏览 代码版本库?

	安装成功之后,会出现好多软件,然后如下:
	启动TortoiseSVN Repository Browser(版本浏览器)
	
	输入地址 svn://127.0.0.1
		这里输入admin  密码:123456

	输入地址 svn://172.20.10.2/th
	输入用户名 taohang
	输入密码 123456
	或者:
	输入用户名 lisi
	输入密码 123456

如图所示:
在这里插入图片描述

q.项目第一次开发导入到版本库?

	Step1: 版本浏览器创建一个文件(可以不用)
	Step2: 找到项目代码目录, 右键,选择import
	Step3: 输入message(信息:如:这是第一次导入的,随便写),点击导入
	注意: 以后就用导入后的代码,本地的不在用了

在这里插入图片描述

q.新人用代码使用操作 checkout(检出)

	第一次导入版本库之后,仓库中就有第一版本了,别人想用就直接检出(checkout)就行了
	
	Step1: 创建一个空文件夹,名字推荐为项目名
	Step2: 右键=>checkout
	Step3: 选择目录检出

在这里插入图片描述

q.每天早上- update更新 代码

在这里插入图片描述

q.每天修改

modify修改:
	打开想要修改的文件直接修改,再SVN commit

在这里插入图片描述

add添加:
		注意: 先创建想要创建的文件,打add标记,再SVN commit

在这里插入图片描述

delete删除
		注意: 不要直接删文件,打delete标记

在这里插入图片描述

q.下班时候 - 提交 commit


6.TortoiseSVN其他操作

q.如何恢复到以前版本?
	Step1: 先show log显示日志
	Step2: 某个版本上点击 revert to this reversion
	Step3: 提交commit

在这里插入图片描述

q.导出 export
	场景: 有人需要不带svn控制的代码, 就export,(比如:老板要检查你的工作)

在这里插入图片描述

q.什么是版本冲突?
	两个人同时改一个文件, 一个人改了,没提交之前,另外一个人也改了。

就是A、B同时拿到文件file1(这里相当于第一版),A修改了里面的内容,B也修改了里面的内容,A这时候修改完提交了,对于文件file1来说,A提交的相当于第二版,这时候B也改完了,也想提交,但是B当时拿到手的并不是第二版,而是第一版file1,他是相对于第一版来改的,这就会发生版本冲突。

	情况1:
		file1
			A改1
			A提交1
			
	这里:A修改完,B才拿到手,B拿到手之前更新了,也就是拿到的是最新版本。
			
			B更新
			B改2
			B提交2
			
			A改3
			A提交3

	情况2:就是我上面说的
		server 		A    		B  
		code1		code1 		code1
					code1.2
		code1.2		提交code1.2  code1(还是)
								code1.3
								提交???
								
								
								结果: code123


	总结: 就是说你修改的代码,不是服务器是最新的
	
		update 之后
		(中间-别人给改了)
		再提交(commit)就会出现:

错误: 文件 “/1802/tianya/index.html” 已经过时

在这里插入图片描述

q.那如何解决版本冲突呢?
	若出现   文件 “/1802/tianya/index.html” 已经过时,消息时,
	
	Step1: 出现上述文件弹出框之后,点击OK,会出现一个弹框,
	Command failed - Update needed   你点击下面的update,这时候
	
		一个文件变4个文件, r100(版本) r101(版本)  .mine的文件

在这里插入图片描述

Step2: 先看最后版本r101
	把自己的改动mine,放到r101
	也就是把你修改的和别人修改的合并在一起,再提交,
	若果你不知道别人修改了哪个地方,那就右键这个文件(这里是index.html),如下图:

在这里插入图片描述

点进去之后,黄色部分就是修改的地方,把两个文件作比较:

在这里插入图片描述

Step3: 修改好之后,右键执行 resolve, 这个操作表示我已经冲突解决了,可以提交了。

在这里插入图片描述

Step4: 最后右键提交修改commit

SVN使用到此结束了,应对一般工作中使用足以,想要了解更多,请自行百度吧。

猜你喜欢

转载自blog.csdn.net/a5252145/article/details/84979418