我做了什么 :
- 执行
svn up
- 将文件夹从 重命名
foo
为bar
- 再次执行
svn up
并得到了冲突:local delete, incoming edit upon update
但为什么 ?
- 我做了
svn log -v
,发现没有提交帖子step 1
- 所以,在那种情况下,svn 应该明白我正在重命名
foo
为bar
- 如果没有其他人对 进行更改,为什么要引发冲突
foo
?
请解释svn如何看待这种情况?
我做了什么 :
svn up
foo
为bar
svn up
并得到了冲突:local delete, incoming edit upon update
但为什么 ?
svn log -v
,发现没有提交帖子step 1
foo
为bar
foo
?请解释svn如何看待这种情况?
原因:SVN 不知道你重命名了目录。与此同时,有人编辑了目录中的文件,SVN 正试图找到它以进行更新。要正确重命名目录:在本地将其重命名为旧名称,然后运行svn rename
命令(执行svn rename --help
以获取更多信息)。您不必立即承诺。
请注意,从BASEsvn log
版本开始打印日志- 即您的工作副本的最后更新版本,因此您需要真正查看是否有人更改了它。svn log foo@HEAD
要重命名目录,您必须使用 svn rename 命令。如果你想恢复你的目录:删除它(右键单击 -> 删除)并执行 svn up