svn tree conflicts 简介

来源:互联网 发布:java程序设计教程视频 编辑:程序博客网 时间:2024/06/10 06:26
svn 1.6新加入的一个conflict,其实在之前也会存在这个问题,只是工具没有提供处理方式,现在会显式的告诉你这是一个冲突。
比如某个文件已经被改名或者被删除了,但是你修改后不先update而直接提交,1.5/1.6都会提示相同的错误,即文件不存在无法提交。像这个样子:
File not found: transaction '9-d', path '/trunk/test.txt'
1.6你先update在提交时会提示: add(+) tree conflicts. 然后提交不成功报错说:Aborting commit: 'E:\temp\test\555.txt' remains in conflict
要解决这个冲突的办法是:
1.如上的操作,执行svn update
2.选中有冲突的那个文件,右键tortoiseSVN-edit conflicts,出现两个选项remove the file和keep the local file,选择一个,一般应该是remove the file,因为之前那个人重命名总是有理由的。
3.svn commit,因为这时候svn非常智能的把你所作的修改自动放到已经改名好的那个文件上,你得提交你这些修改。

如下是svn命令行的方式:
2.删除已经删除的文件,执行svn delete
3.把本地目录标记为resolved,然后commit

注意:

尽管tree conflicts是1.6的新功能,但分为client和server两端来同时实现,所以server端不是1.6的情况下,client端也能识别一部分tree conflicts,但不能识别全部

转自:http://eyejava.iteye.com/blog/356109

0 0