SVN基本使用及如何避免和解决冲突

一、SVN安装

1.官方下载地址

https://tortoisesvn.net/downloads.zh.html

 

点击后稍等,自动完成下载:

下载后的安装包:

2.安装

 

 

 

 

 

 

 

二、基本使用

1.checkout

1.1首先要有一个SVN的地址,例如:

https://192.168.23.225/svn/SoftwareTesting/02_ProjectLevel/11_5G_Standard/Communal/01_ProjectMonitoring/01_WeeklyReport/01_SDX55/02_组员周报

1.2然后在本地新建一个文件夹,名称自定义:

1.3 进入文件夹,在空白处右击,点击SVN Checkout:

1.4 输入SVN地址,点击OK:

1.5 完成checkout,可以正常使用和查看文件了

2.update

保证本地内容最新,与服务器一致

2.1 进入到你想要update的目录,在空白处右击,选择点击update

2.2 自动下载并完成与服务器同步(同步本地与服务器一致,包含增删改等操作)

注:要养成良好的习惯,查看和编辑文件之前都先update一下,可以保证你操作的文件都是最新的。

3.commit

提交本地的更改到服务器(同步服务器与本地一致,包含增删改等操作)

3.1 增加:

3.1.1 先新增一个文件,然后在文件上右击,选择Add:

 

3.1.2 然后在空白处点击commit,完成上传提交

3.1.3 此时查看服务器,文件已经被上传

3.2 修改

3.2.1 修改前先update一下,保证最新。修改后,右击点击commit,完成修改

3.3 删除

3.3.1 与新增文件相似,选择要删除的文件,右击选择delete

3.3.2 提交删除后查看服务器,文件已不不存在

4.show log

4.1在空白处右击,选择show log,可以查看更新记录

5.repo-browser

查看服务器内容

6.Revert

撤销修改

7.clean up

有时候SVN 本地更新时,由于一些操作中断更新,如磁盘空间不够、取消等,可能会造成本地文件被锁定,此时运行一下clean up可以解除

8. Update to revision

后悔

可以更新本地内容到指定版本:

删除的文件又回来了:

三、常见问题

  1. 误提交:例如修改、删除等,想要改回来,可以使用 Update to revision,下载更改前的版本文件到本地,然后再次提交这未修改的到服务器。
  2. 异常报错,本地文件被锁定,此时运行一下clean up
  3. 冲突

3.1冲突产生的原因

  1. 假设A、B两个用户都在版本号为100的时候,更新了1.txt这个文件
  2. A用户在修改完成之后提交1.txt到服务器,这个时候提交成功,此时1.txt文件的版本号已经变成101了。
  3. 同时B用户在版本号为100的1.txt文件上作修改,修改完成之后提交到服务器时,由于不是在当前最新的101版本上作的修改,所以导致提交失败。

此时B同时修改1.txt文件并提交

3.2如何解决冲突

方法一

在冲突的文件上(选中文件--右键菜单—TortoiseSVN—Edit conflicts

Theirs窗口为服务器上当前最新版本

Mine窗口为本地修改后的版本

Merged窗口为合并后的文件内容显示

点击use this text block就会将指定内容添加到处理结果中,处理好后点击SAVE

最后提交解决

最后查看服务器内容,两者都有了:

方法二

冲突产生后:

备份自己的修改,删除冲突文件:

删除后重新update最新文件,将自己的修改手动补充上去,再提交

此时已是根据最新内容进行修改,不会再出问题了

3.3如何避免冲突

1.修改前先update,保证本地内容是最新的

2.当文档编辑完成后,尽快提交

3.避开短时间多人提交时段进行更新

4.发生冲突后要妥善解决,不可强行提交,造成别人的修改被抵消

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值