TFS 过期用户
Posted
技术标签:
【中文标题】TFS 过期用户【英文标题】:TFS expired user 【发布时间】:2015-03-05 04:00:12 【问题描述】:像往常一样,我在这里问之前广泛搜索了一个解决方案,我真的被困住了。
我目前正在使用客户 TFS 服务器,但我没有任何管理权限。我和一位同事使用同一个用户帐户,我知道这是一种不好的做法,但在这里我也别无选择。
今天发现账号过期了,客户说不会再激活了。相反,他们给了我们一个新帐户。
问题在于,在我们的本地工作区中,我们有一些未提交的更改。我正在尝试找到一种方法将本地工作区重新评估给不同的用户,但我尝试的每条路径都会导致死胡同。
我尝试的一件事是访问当前工作区并将其设置为“公共”,以便其他用户可以使用它,但我无法访问当前工作区,因为我处于脱机状态并且用户已过期。
如果我更改 TFS 凭据并尝试获取最新版本或其他任何内容,我看不到旧工作区,而只看到新用户的工作区,新用户没有对我的本地工作区的“使用”访问权限。
我还读到不鼓励手动合并更改(使用 KDiff 或 Winmerge),因为 TFS 看不到在 VS 之外完成的编辑,因此它不会知道文件已被修改。当我尝试使用 Notepad++ 更改 .csproj 文件中的某些节点时,我个人注意到了这种行为,而 TFS 并没有在待定更改中为我提供文件。
有人知道在不丢失本地更改的情况下与新用户合作的正确方法吗?
谢谢。
【问题讨论】:
【参考方案1】:1)为来自服务器的最新变更集创建一个分支 2) 将文件签出到您的工作区 3)覆盖工作空间中的文件 4)现在分支包含您的更改 5)将包含您的更改的分支与最新的合并。
【讨论】:
我会将其标记为答案,因为它有意义,即使它不能解决我的具体问题,因为我们的用户帐户没有创建分支的权限。或者做一个恢复或任何与获取最新/签入不同的事情。【参考方案2】:您有三个选择:
如果您使用的是 TFS 2012+ 和 VS 2012+,您可以以新用户身份创建一个新工作区,并将其设为“本地”工作区,而不是服务器工作区。然后只需将更改放在 VS 中即可检测到它们。
如果您使用的是旧版本的 TFS 和/或 VS,您可以使用“联机”选项(仅限 2010 年)
如果您使用的是非常旧的版本,您可能需要先检查整个工作区,然后再将更改放回。
更新:为了实现更改的合并,您可以从您从服务器“获得”的最后/最新更改集创建一个分支。然后只覆盖你的文件...你现在有一个只包含你的更改的分支,然后你可以使用合并工具将它缝合在一起。
注意:还请注意,您应该经常(至少每天)检查代码,以避免出现此问题。
【讨论】:
是的,我知道是三个...在手机上你不能不删除就编辑? 这是 TFS2013,但您的选项 1) 没有解释如何“删除”这些更改。我不能简单地覆盖文件,因为它会删除其他人所做的更改。我需要合并它们,但由于我无法访问旧仓库中添加/修改/删除文件的列表,我不得不对整个解决方案进行完整的比较。还是我错过了什么?以上是关于TFS 过期用户的主要内容,如果未能解决你的问题,请参考以下文章
TFS--解决新创建的windows用户无法访问TFS的问题