【SVN】SVN基本操作和常见问题

SVN基础操作

 

SVN下载地址:

客户端:TortoiseSVN: http://tortoisesvn.net/downloads.html

服务器端:VisualSVN: http://www.visualsvn.com/server/download

 

1.      安装服务器端,打开服务器端,创建仓库和新建用户。

【SVN】SVN基本操作和常见问题_第1张图片

1.      安装客户端,下载服务器端仓库。

【SVN】SVN基本操作和常见问题_第2张图片

SVN基本操作

 

新增一个文件,选择SVN commit提交这个文件。SVN update 进行更新。

 

SVN常见问题1:

 

B用户不小心把A的代码删掉,改为了自己的代码。

如何找回代码:

选中文件—TortoiseSVN—show log  查看文件的修改记录

【SVN】SVN基本操作和常见问题_第3张图片

如果要恢复被修改的文件,则选中提交记录,点击revert to this version(恢复到这个版本),然后重新提交。

 

如果不小心删除了文件,则再SVN根目录下选择show log,此时可以看见所有的提交记录,选中要找回的文件,右键save revision to,然后重新提交这个文件。

 

SVN常见问题2:

A用户和B用户同时更新的代码并且做了修改,然后B提交的较早,A提交的慢。A提交时会提醒需要更新代码,好的情况下是A和B修改的地方不同,SVN会帮我们自动合并代码。

 

另外一种情况,A和B修改了同一行代码。然后B先提交,此时A再去提交,会提示文件已过时,此时再去更新代码,会提示冲突,如下图:

【SVN】SVN基本操作和常见问题_第4张图片

文件夹下生成了四个文件

【SVN】SVN基本操作和常见问题_第5张图片

Test.java 表示合并后的文件。

Test.java.mine表示你修改后要提交的文件。

Test.java.r10 表示你修改之前,你认为的最新的版本。

Test.java.r11 表示你修改前,服务器的最新版本。

可根据上面的文件,根据自己的实际需要去修改代码。

恢复修改,revert

 

SVN常见问题3:

实际问题中,如果A和B有多处冲突,并且A和B都有有效的代码需要提交上去。假如B先提交,A再提交会失败,此时不要更新代码,会产生冲突文件,把修改的文件拷贝一份到其他地方,然后选择恢复到为修改前的版本,然后更新代码,把备份代码更换一个名字拷贝到目录下,使用svn的比对工具选择需要保留和修改哪些代码,修改完成后删除备份代码,提交代码。

 

另一种情况,B修改了A的方法,但是A没有发现,日久天长这个问题就埋下一个隐患,此时代码已经过去了很多版本了,此时可以选择show log ,进行不同版本的比对。

【SVN】SVN基本操作和常见问题_第6张图片

你可能感兴趣的:(其他)