SVN版本冲突的解决方法(非加锁)
版本冲突原因:
加入A、B两个用户都在版本为10的时候更新了file.txt这个文件,A用户在修改完之后并将file.txt提交到服务器,这个时候A的提交是成功的,并且file.txt文件的版本号已经变成 了11。同时B用户在版本号为10的file.txt文件上进行修改,修改完成后提交到服务器,由于file.txt在服务器端的版本号已经变成了11,而B用户对file.txt的修改不是在版本号 为11上作修改,所以导致提交失败。
解决方法:
1、发生版本冲突后,提交的文件状态会变为如下:
2、在冲突的版本上点击右键选择TortoiseSVN——Edit conflicts,会出现如下图:
在上图中Theirs窗口为服务器上当前的最新版本,Mine窗口为本地修改后的版本,Merged窗口为合并后的文件内容。
- 如果要使用服务器版本,在Their窗口中选中差异的内容,右键选择User this text block,在Merged窗口即可替换为服务器版本的内容。
- 如果要使用本地版本,在Mine窗口中选中差异的内容,右键选择User this text block,在Merged窗口即可替换为本地版本的内容。
- 修改完后要保存文件。
- 解决冲突后,选择冲突文件,点击右键——TortoiseSVN——Resolved,表示冲突已解决。
1、当文档编辑完成后,要尽快提交。
2、在提交的时候,要写明message,方便以后查找用户更新的原因。
3、使用SVN时注意是先提交,后更新。