我正在尝试将大型项目的完整历史从 Visual SourceSafe 2005 迁移到 TFS 2013。我使用 Visual Studio 2013 安装了向导,并正在从本地计算机迁移到远程办公室的 TFS 服务器。
该向导遍历 Visual SourceSafe 中的历史记录,并从 VSS 签入组创建 TFS 变更集。迁移顺利进行,直到它到达一大组文件,其中一些是大型二进制文件,然后出现以下错误:
“[错误@time_of_error]:请求被中止:请求被取消。”
然后,向导将进入等待一段时间、重试并遇到错误的循环,直到我取消迁移。
这与尝试使用 Visual Studio 手动将一组大型二进制文件提交到 TFS 时出现的错误相同。我无法提交一组总计 252 MB 的文件。下面这个链接中给出的答案告诉我,减少 http 分块大小可以解决问题。
添加...
<add key="VersionControl.UploadChunkSize" value="1048576" />
到“C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe.config”的“appSettings”部分将块大小减少到 1 MB,并允许我使用 Visual Studio 2013 提交总共 1.16 GB 的二进制文件组。
我的理论是向导将一大组文件放入变更集中,并尝试将该变更集提交到 TFS。但是,当其中一个文件在超时内未达到块大小时,提交失败并导致向导进入循环。
我将修复程序添加到 devenv.exe.config 和 TF.exe.config,重新开始迁移,并遇到相同的超时错误。我可以在 Visual Studio 中手动提交问题变更集,而向导不能。
我的问题:
是否可以更改 Microsoft 的 VSS 升级向导执行 HTTP 分块的方式?(我对 devenv.exe.config 和 tf.exe.config 的更改似乎没有什么不同)