轻松搞定VS2010 和旧版本服务器一起使用的问题
2010-12-28 21:57
344 查看
TFS(Team Foundation Server) 2010的一个新特性是自动的版本控制代理配置。第一次执行版本控制操作的时候,客户端会连接到服务器,然后,它会请求代理配置信息。如果对于这个客户端 来说,没有代理可用,那么它会在24小时以后再次请求代理配置信息的。
为了让代理可以在本地自动配置,客户端需要提供这个服务器在Active Directory中的“site name”。服务器使用这个数据来判断要把哪几个代理分配给这个客户端。在德国的客户端会被分配德国的代理,在南非的客户端会被分配南非的代理。这和 Windows通过Add Printer Wizard把地域上离你最近的打印机显示给你使用的是同一种机制。
不幸的是,VS(Visual Studio) 2010客户端中的这个自动的版本控制代理配置机制和2005/2008版本的服务器一起使用的时候,还存在一个bug。当和旧版本的服务器一起使用的时 候,无法查询代理配置信息。这主要是因为服务器不支持这个功能。但是,通过执行如下列表中的任何一个版本控制操作,你还是可以检索Active Directory中的“site name”。
* Get
* Merge
* Unshelve
* Edit
* Delete
* Undelete
* Rename
* Undo
* Add
* Branch
* Resolve
在任何情况下,从LDAP(Lightweight Directory Access Protocol )获取这个数据都会带来一定的性能损失。但是,在某些情况下,这个性能损失会特别大。一个客户报告说,检索Active Directory中的“site name”延迟了8到9分钟。如果你正在使用VS(Visual Studio) 2010和TFS(Team Foundation Server)2005/2008。你可以通过下面的注册表设置来禁用自动代理配置,你将会看到明显的性能提升。
首先,在Visual Studio中检查你的版本控制代理设置:Tools –> Options –> Source Control –> Visual Studio Team Foundation Server。如果你过去配置过一个代理,那么proxy server protocol, name,和port都应该是可用的,你不会受到这个问题的影响。(如果你想100%确认自己的代理设置是怎样的,验证代理设置的说明如下)
不使用版本控制代理:
对于那些不使用代理服务器的用户来说,他们的设置如下。所有文件都可以直接从TFS(Team Foundation Server)服务器直接下载。
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\TeamFoundation\SourceControl\Proxy]
"Enabled"="False"
"Url"="http://dummy.example.com/"
"AutoConfigured"="False"
手动配置版本控制代理:
你无需进行进一步的操作。如果你喜欢的话,你可以直接检查你的注册表设置来确认他们是否和下面的注册表设置一致。(如果除了这些值,你还看到了“LastCheckTime” 或“LastConfigureTime”项,那也是正常的,他们是“无害的” )
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\TeamFoundation\SourceControl\Proxy]
"Enabled"="True"
"Url"="http://yourversioncontrolproxy:8081/"
"AutoConfigured"="False"
安装临时解决方案的设置
把上面那些文本复制/粘贴到记事本,然后另存为.reg文件,执行这个文件。接着,你会收到把这个数据合并到注册表的权限警告,确认,重新启动Visual Studio后这些改变就生效了。
(本文转载自51cto,译者周雪峰)
为了让代理可以在本地自动配置,客户端需要提供这个服务器在Active Directory中的“site name”。服务器使用这个数据来判断要把哪几个代理分配给这个客户端。在德国的客户端会被分配德国的代理,在南非的客户端会被分配南非的代理。这和 Windows通过Add Printer Wizard把地域上离你最近的打印机显示给你使用的是同一种机制。
不幸的是,VS(Visual Studio) 2010客户端中的这个自动的版本控制代理配置机制和2005/2008版本的服务器一起使用的时候,还存在一个bug。当和旧版本的服务器一起使用的时 候,无法查询代理配置信息。这主要是因为服务器不支持这个功能。但是,通过执行如下列表中的任何一个版本控制操作,你还是可以检索Active Directory中的“site name”。
* Get
* Merge
* Unshelve
* Edit
* Delete
* Undelete
* Rename
* Undo
* Add
* Branch
* Resolve
在任何情况下,从LDAP(Lightweight Directory Access Protocol )获取这个数据都会带来一定的性能损失。但是,在某些情况下,这个性能损失会特别大。一个客户报告说,检索Active Directory中的“site name”延迟了8到9分钟。如果你正在使用VS(Visual Studio) 2010和TFS(Team Foundation Server)2005/2008。你可以通过下面的注册表设置来禁用自动代理配置,你将会看到明显的性能提升。
首先,在Visual Studio中检查你的版本控制代理设置:Tools –> Options –> Source Control –> Visual Studio Team Foundation Server。如果你过去配置过一个代理,那么proxy server protocol, name,和port都应该是可用的,你不会受到这个问题的影响。(如果你想100%确认自己的代理设置是怎样的,验证代理设置的说明如下)
不使用版本控制代理:
对于那些不使用代理服务器的用户来说,他们的设置如下。所有文件都可以直接从TFS(Team Foundation Server)服务器直接下载。
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\TeamFoundation\SourceControl\Proxy]
"Enabled"="False"
"Url"="http://dummy.example.com/"
"AutoConfigured"="False"
手动配置版本控制代理:
你无需进行进一步的操作。如果你喜欢的话,你可以直接检查你的注册表设置来确认他们是否和下面的注册表设置一致。(如果除了这些值,你还看到了“LastCheckTime” 或“LastConfigureTime”项,那也是正常的,他们是“无害的” )
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\TeamFoundation\SourceControl\Proxy]
"Enabled"="True"
"Url"="http://yourversioncontrolproxy:8081/"
"AutoConfigured"="False"
安装临时解决方案的设置
把上面那些文本复制/粘贴到记事本,然后另存为.reg文件,执行这个文件。接着,你会收到把这个数据合并到注册表的权限警告,确认,重新启动Visual Studio后这些改变就生效了。
(本文转载自51cto,译者周雪峰)
相关文章推荐
- 问题:服务器配置为将传递身份验证和内置帐户一起使用,以访问指定的物理路径。
- Android开发使用retrofit上传文件和多个参数一起时失败问题
- 使用nginx解决一台服务器中ws协议与wss协议共存问题 2017-07-09 13:29:06
- apache日志文件太大的问题--轻松搞定
- 轻松搞定面试中的红黑树问题
- vs2010使用openCV中的imread读不到图片问题的解决方法
- VS2010 使用时选择代码或双击时出错,点击窗口按钮后VS自动重启问题
- nodejs搭建本地服务器轻松解决跨域问题
- VS2010中C++如何使用System命名空间的问题
- 轻松搞定面试中的红黑树问题
- 解决Vista访问ProjectServer2003服务器时,datatable无法使用问题_Microsoft JScript runtime error '800a138f'
- RHEL4- SAMBA服务(八)使用swat轻松远程配置、管理smba服务器 推荐
- flash播放mp4插件轻松搞定播放视频问题
- 轻松搞定面试中的红黑树问题
- 服务器后端servlet中文信息返回,使用response乱码的问题及setCharacterEncoding()与setContentType()区别
- 解决使用专有网络的阿里云服务器无法远程连接的问题
- 完美解决viewpager跟其他类型的listview 或 gridview一起使用时,滑动冲突问题
- 用Xshell连接服务器时,VIM的数字键使用问题
- 使用.NET向webService传double、int、DateTime 服务器得到的数据时null的问题
- 轻松搞定面试中的红黑树问题