在使用VisualSVN和VS2012的情况下。
- 右键重命名文件(使用VS解决方案资源管理器)
- 进行了几个小时的修改
- 右键提交项目
- 右键并修复文件的前后版本
- '错误'框显示“找不到文件”
- 是的,没错,我的文件的新版本消失了。
- (删去了粗话)
我知道SVN不喜欢无法控制重命名,但这里出了什么问题?
在使用VisualSVN和VS2012的情况下。
我知道SVN不喜欢无法控制重命名,但这里出了什么问题?
看起来是TortoiseSVN的一个bug。我刚刚向TortoiseSVN邮件列表报告了此问题。该漏洞已被修复,感谢Stefan Kung。
对于正确重命名或移动的文件,您无需在其上运行“修复移动”命令。VisualSVN跟踪在Visual Studio中执行的所有文件操作,并将其反映到Subversion中。移动、添加、重命名等——这些都由VisualSVN插件覆盖。
以下是与您的问题相关联的TortoiseSVN手册中的一句话:
VisualSVN实际上会告诉Subversion已经重命名了文件,因此在使用VisualSVN时不需要运行“修复移动”操作。有时,您友好的IDE会在重构练习中为您重命名文件,当然它不会告诉Subversion。
D WindowsFormsApplication3\Program.cs
> moved to WindowsFormsApplication3\SUPERPROGRAM.cs
A + WindowsFormsApplication3\SUPERPROGRAM.cs
> moved from WindowsFormsApplication3\Program.cs
如您所见,文件已被正确重命名。
在您提交更改后,这里是重命名的存储库日志条目:
r3 | Pavel.Lyalyakin | 2015-04-22 13:46:38 +0300 (Wed, 22 Apr 2015) | 1 line
Changed paths:
D /trunk/WindowsFormsApplication3/Program.cs
A /trunk/WindowsFormsApplication3/SUPERPROGRAM.cs (from /trunk/WindowsFormsApplication3/Program.cs:2)
正如您所见,有一条注释指出文件SUPERPROGRAM.cs在第2次修订中从Program.cs重命名。