Team Foundation Server Beta3(TFS)中关于连接和用户验证的bug以及解决方案(TFS高手进)
2010-04-27 17:40
423 查看
Team Foundation Server Beta3(TFS)中关于连接和用户验证的bug以及解决方案(TFS高手进)
最近一个项目,XP操作系统中使用VS2005连接Team Foundation Server进行源码管理和控制。我在使用当中碰到了一个严重问题,和大家分享经历,希望能帮助有同样问题的朋友,更希望有高手能给出更好的解决方案,大家交流一下。问题描述:
我用的是TFS客户端,要连接服务器端,获取源码。
1. 打开tool菜单,选择Connect to Team Foundation Server….
2. 然后按照提示输入服务器地址和你要选择的项目。
3. 问题就在这里,这时候会出现用户登陆验证框,要求你输入用户名和密码,如图,当你选择保存用户名和密码后,你会发现你将再也无法修改这个用户名和密码,由于我当初是使用别人的帐号登陆的,现在要改回自己的帐号实在费了一番心血。(强烈建议,千万别记住用户名和密码!!!!!)
4. 已经添加的服务器无法断开连接。
从微软论坛上找到的资料
1、
Q:Can not disconnect from TFS Server in explorer window
Was this post helpful ?
When i started a connection (Studio 2005) the first time after the upgrade to TFS Beta 3 Refresh no login was prompted when connected to the FTS server. I was loged on as administrator.
I can not find a way to disconnect from the server and login as another user (myself). When I disconnect I receive an error saying
“Value can not be null.
Parameter name : uriString”
A1:
Thomas, this bug has been logged and fixed in RTM. You can try "Devenv /resetuserdata" that would reset VS and then start connecting to the server again. I will also check to see if there are other workarounds.
A2:
I did that!
I have uninstall VS2005 + install VS2005
I ran "devenv /resetuserdata" and the the VS2005 started as first time (as it should).
When I connected to TFServer I had to re-add the TFserver again.
Everything went just fine but no login popup and the connection to TFS is once again as administrator!
Please let me know how to switch to my normal login!
I've got a solution for users running XP.
Edit USer Accounts -> Advance -> Manage Passwords and remove the TFServer server/password!
Login again and you will be pronpted for user & password!
Best Regards,
Thomas
Can not have this to work the 2:nd time!!!!!
Studio will start as for the first time but no login is prompted and I am the same user as before and can access TFS.
Any suggestions how to reset this?
分析:
从上面的回答可以发现,有人重装了VS2005都没用,那就是说这个用户名和密码是存储在XP系统中的,而且也提到了无法断开连接这个目前知名的bug。
上面回答的人给出了一个解决方案,说是从user accounts进入,删除掉那个密码。在Xp我没找到如何通过控制面板进入的方法,只有从开始运行输入
rundll32 netplwiz.dll,UsersRunDll,打开用户管理界面,如图。但是显然在其中并没有A2所说的TFServer server/password,只能对此种方案表示放弃(谁知道的告诉我阿)
2、
Q:
Clean client cache - Want to login with a different user
Was this post helpful ?
On client side, when opening VS it automatically logs in to team foundation server with the user I provided the first time. How do I connect with another user. The dialog does not display. I have tried Internet Explorer->Internet Options->Security to prompt every time, but with no success.
I have also tried devenv.exe /resetuserdata
A1:
In Visual Studio SDK there is a Visual Studio Team System Integration part which in the subfolder named "Utilities" hides three useful utilities. One of these utilities called "CleanCreds.exe" should do the trick. Here is a part of the readme.txt file for the utility:
CleanCreds.exe
--------------
This tool is used to delete stored credentials for Team Foundation Server connections. It applies to the following scenario:
1). From the Team Explorer, connect to a Team Foundation Server for which the running account does not have permissions.
2.) When prompted for alternate credentials, enter in alternate login and password and check the "Remember my password" checkbox
3). Confirm the alternate credentials and login to the server
4. Any future connection to that Team Foundation Server from this machine using the running account will use the alternate credentials. There is no easy way to delete the stored alternate credentials.
This scenario is problematic in environments where the Team Explorer client machine is shared and alternate credentials are used frequently.
Clearing Credentials
To delete the stored credentials, use the CleanCreds.exe utility as follows.
1). Ensure that you have logged in to the client machine using the original running account
2.) Copy the CleanCreds.exe to the client machine
3). From the command prompt, run:
CleanCreds <Team Foundation Server URL>
The URL usually looks as follows:
http://TFS:8080/
This will delete the alternate credentials stored for the running account for connecting to the specified Team Foundation Server.
A2:
You should also be able to do this by executing some command with the tf.exe command line. The command-line supports a /login option where you can specify a user name. That will pull up the credentials dialog and allow you to save new credentials.
分析:
在这个解决方案中,提到了使用CleanCreds.exe这个程序,可以清除密码,本来我以为事情就这么顺利解决了,可是没想到无论从google或者baidu或者自己的电脑中,都无法找到关于CleanCreds.exe这个程序的任何相关资料,我也尝试到MSDN中去搜索,依然是一无所获,后来我尝试查找A2中的tf.exe,首先这个程序能从VS2005中轻松找到,是个命令行程序,用DOS打开,键入tf.exe -?后会自动打开MSDN中相关内容,看了后就是没找到A2中提到的/login参数,何解?放弃该方案。
最终解决方案:
以上解决方案最终都没成功,最后是我一个同事问到了微软的人才最后解决的,说解决其实不恰当,其实是绕过了这个问题。
不要双击,Visuao Studio 2005的快捷方式。用鼠标点右键!选择运行方式
出现如下图,换一种系统帐户登陆(如没有,需要新建一个用户),确定!
重新设置TFS,用你想要登陆的用户名登陆!!
这就等于是换了个用户使用,这种方法带来的问题是,下次直接使用项目登陆是不能默认登陆为更改后的帐户的,必须每次都右键通过运行方式改变用户登陆,再打开需要编辑的解决方案,非常麻烦。但是能够暂时解决问题。
结论:这里提出的可以说是一种暂时的解决方案,期待微软能在下一个版本中解决这个bug,包括对连接上的服务器无法断开的bug。期待高手能给出更好的解决方案。
相关文章推荐
- Team Foundation Server Beta3(TFS)中关于连接和用户验证的bug以及解决方案(TFS高手进)
- Team Foundation Server Beta3(TFS)中关于连接和用户验证的bug以及解决方案(TFS高手进)
- Team Foundation Server (TFS)中关于连接和用户验证的解决方案
- 有关于在Extjs4环境中,window窗口下的messageBox弹窗的bug以及解决方案
- Servlet 实现用户登录验证以及连接mysql数据库
- SQL Server2005用新建用户名登录提示“该用户与可信 SQL Server 连接无关联” 以及SQL Server2005常见错误及解决方案
- 普通用户非root用户winscp连接linux时提示用户连接失败监测到超时的原因以及解决方案
- 关于VS2010连接TFS(xxx.visualstudio.com)需要代理验证的解决方法
- SQL Server2005用新建用户名登录提示“该用户与可信 SQL Server 连接无关联” 以及SQL Server2005常见错误及解决方案
- 关于bug验证
- 关于ftp用户连接时出现500 OOPS: cannot change directory:/root报错
- 关于ruby gem无法连接到rubygems.org的解决方案
- 随记一下 关于域用户的AD验证
- 关于session过期返回主页解决方案之一以及js中的“和'使用问题
- 关于cocos2dx播放音效的bug以及修正方法
- JBoss AS7中的新概念-Domain[master配置domain.xml和host.xml和自己的管理员账号以及用于slave连接验证的账号,slave只需要配置host.xml配置文件即可]
- .NET中验证域用户名以及密码的方式
- ASP.NET MVC4 validate验证遇到DateTime 类型的Bug(完整解决方案)
- 关于ORACLE的ora-12505报错以及连接问题的解决及相关资料
- 关于jdbc连接mysql的问题bug