【问题标题】:Change computer name for a TFS Workspace更改 TFS 工作区的计算机名称
【发布时间】:2012-01-16 03:13:16
【问题描述】:

我的系统管理员重命名了我的计算机。所以原来是“MyLaptop2”的地方现在只是“MyLaptop”。

所以现在我所有的源代码控制绑定和签出文件都在寻找带有“MyLaptop2”的工作区。

有没有办法将该工作区重定向到我重命名(但仍然相同)的计算机?

【问题讨论】:

  • 下面答案中的命令必须在 Visual Studio 的开发人员命令提示符中运行。在 Windows 8+ 中可能很难找到它,因此请查看 WiredPrairie 在stackoverflow.com/questions/21476588/… 中的回答,了解如何找到它。
  • 与 Visual Studio 在线配合使用。今天试了一下。

标签: tfs workspace


【解决方案1】:

在 Visual Studio 的开发人员命令提示符中运行的这个命令起到了作用:

tf workspaces /updateComputerName:MyOldComputerName /s:"http://MyServer:8080/tfs/MyCollection"

它必须从我想将工作区分配到的计算机上运行(这就是它获取新计算机名称的方式。

【讨论】:

  • 仅供参考:这也适用于 TFS 2012 下的本地工作区。
  • +1 如果在此期间您已经在新的本地工作空间中重新映射了路径,则此命令将失败并显示“路径已映射”错误。您必须删除新的本地工作区,然后启动命令
  • 我在哪里运行这个命令?普通命令行(cmd.exe)?我在那里试了一下,上面写着'tf' is not recognized as an internal or external command, operable program or batch file.
  • 找到了! Greg 解释说,我首先必须更改到包含 tf 可执行文件的目录 (cd c:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE)。
  • 或按 WindowButton -> 所有程序 -> Visual Studio 2013 -> Visual Studio 工具 -> VS2013 的开发人员命令提示符
【解决方案2】:
  1. 制作项目文件夹的副本
  2. 在 TeamExplorer/SourceControl 中映射原始本地文件夹
  3. 将只读属性设置为原始本地文件夹和子文件夹
  4. 从原文件夹加载项目,上线获取最新版本。本地文件将被覆盖。
  5. 关闭解决方案,删除原文件夹,用原文件夹名恢复副本
  6. 打开解决方案,上线,即可无冲突签入文件。

【讨论】:

    【解决方案3】:

    Vaccano 是正确的,但是,我需要 UpdateCompterName 开关后的工作区名称。在我的情况下,工作区是旧机器名称。

    如果您不知道您的工作区名称,您可以使用以下方式查找所有工作区名称:
    tf workspaces /owner:* /computer:* /server:http://MyServer:8080/tfs/MyCollection

    所以我最终得到了以下结果。
    tf workspaces /updateComputerName:MyOldComputerName MyOldComputerName /s:http://MyServer:8080/tfs/MyCollection

    【讨论】:

      【解决方案4】:

      我尝试运行其他答案中提到的命令;但是,我的项目托管在 TFS 在线 (visualstudio.com) 中,因此我需要先进行身份验证,因为我不断收到此错误消息:

      TF400813: Resource not available for anonymous access.
      

      对我来说,移除工作空间并重新连接更加简单快捷:

      文件 > 源代码管理 > 高级 > 工作区(删除工作区)

      【讨论】:

      • 这样做肯定更容易(如果您没有在“旧”工作区中签出任何内容)
      【解决方案5】:

      Vaccano 的解决方案对我有用。我尝试了几次才获得正确的 TFS URL,所以我想我会把它发布给那些使用 Microsoft 的 Visual Studio TFS 托管(目前对小型团队免费)的人。

      从我电脑上的命令提示符,我首先切换到正确的目录:

      cd c:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE
      

      然后我运行命令:

      tf workspaces /updateComputerName:OLDCOMPUTERNAME /s:"https://MYCOMPANY.visualstudio.com/DefaultCollection"
      

      然后它告诉我我的新工作区与我的新计算机名称的机器名称匹配。

      希望路径有所帮助。

      【讨论】:

      • @andrewsi - 在进行 same 格式更改并忽略第一个的大小写和措辞更改之前,您将rejected my edit 称为“未解决关键问题”的任何特殊原因段落?
      • 我不认为第一段的变化使答案更具可读性;并且您错误地标记了代码行-您使用了反引号,而不是缩进。如果您认为您的更改确实改进了内容,请随时重新提交您的编辑,如果我看到它是否在编辑队列中,我会跳过,以便其他编辑者可以决定。
      • @andrewsi - 好的。我不同意你关于反引号的观点——单行代码在反引号 IMO 中非常好,但我会推迟这一点,因为这取决于个人喜好。我将重新提交对第一段的大写更改,至少这次不会重新排列句子以提高可读性
      • 谢谢,它为我节省了大量时间。
      • 我必须按照@olleh 的建议做,并使用格式 tf workspaces /collection:COLLECTION_URL /updateComputerName:OLD_COMPUTER_NAME 我不知道 /s 的建议在哪里而不是/collection 来自,但它对我不起作用。
      【解决方案6】:

      只是为了澄清 TFS Online(MS 托管 TFS)的用户 - 如果您的 url 是“mytfs.visualstudio.com”并且您的收藏是“DefaultCollection”,那么上面列出的命令将是:

      列出所有工作区: tf 工作区 /owner:* /computer:* /server:https://mytfs.visualstudio.com/DefaultCollection

      从 OldPcName 更新: tf 工作区 /updateComputerName:OldPcName /server:https://mytfs.visualstudio.com/DefaultCollection

      简而言之,指定 HTTPS,忽略端口,不要添加 /tfs/ 文件夹结构。

      然后,您可以通过转到源代码管理资源管理器并使用 Workspace 下拉菜单来选择(并根据需要重命名)工作区。

      【讨论】:

        【解决方案7】:

        在 Visual Studio.. 转到“团队资源管理器-主页”...您将能够看到您的工作区名称.. 单击它并“管理”.. 添加您的工作区.. 这应该可以解决问题。 .

        【讨论】:

          【解决方案8】:

          我有同样的问题,来到这里。但后来我关闭并重新打开了视觉工作室,一切都很好。所以...这可能是某些人的解决方案。

          【讨论】:

            【解决方案9】:

            鉴于它对我的作用。

            第 1 步。转到 Visual Studio 命令提示符

            第 2 步。在上面的命令提示符中输入命令tf workspaces。此命令将显示您在计算机中创建的所有工作区以及集合名称。仔细查看命令结果的第一行。

            第 3 步。在同一命令提示符下键入命令tf workspaces /updateComputerName:OLDCOMPUTERNAME /s:"collection name as shown above"

            OLDCOMPUTERNAME 和集合名称在这里非常重要。

            【讨论】:

              【解决方案10】:

              如果有人对CommandPromt 不满意(比如我)This Infographic post can help you 。这是博客中的文本 sn-p:

              单击 Visual Studio 2013 上的 FILE 菜单。现在单击

              源代码控制 -> 高级 -> 工作区..

              这将打开一个标题为“管理工作区”的窗口。它显示了您有权访问的这台计算机上的工作区列表。该列表包含 4 列:

              1. 工作区名称
              2. 电脑
              3. 工作区所有者
              4. 评论(如果在创建工作区时添加)

              添加工作区: 如果 Workspace Manager 为空,则可能您尚未添加。单击添加按钮并输入您的服务器/用户名/密码,它将为您列出添加的一个。

              更新工作区: 稍后,如果您更改了计算机名称或无论如何要相应地更新工作区,请选择要编辑的工作区并单击“编辑”按钮;在这里您可以更新您的工作区详细信息。

              【讨论】:

              • 我看不到,在这种情况下如何更改计算机名,因为显示它的字段是只读的。你能解释一下吗?
              【解决方案11】:

              为了避免在创建新工作空间后获取和映射

              1. 运行cmd

              2. 导航到 Visual Studio IDE 路径。像这样的:

                C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE
                
              3. 运行这个命令:

                tf workspaces /updateComputerName:MyOldComputerName /s:"http://MyServer/tfs/MyCollection"
                
              4. 在“管理工作空间”中,删除添加的工作空间(命名为您当前的计算机名称),并将旧的工作空间重命名为您当前的计算机名称。

              在这种情况下,您不需要任何额外的 get 和 map。

              【讨论】:

                【解决方案12】:

                为了扩展一些较早的答案,我的收藏名称中有一些空格。即使集合名称用引号引起来 ("http://1.2.3.4:8080/tfs/My Collection Name"),您也需要将任何空格字符替换为 %20 以正确解析名称 (tf workspaces /updateComputerName:MyOldComputerName /s:"http://1.2.3.4:8080/tfs/My%20Collection%20Name")

                【讨论】:

                  【解决方案13】:

                  我必须在 VS 的开发人员命令提示符中执行此操作:

                  C:\Program Files (x86)\Microsoft Visual Studio 14.0>tf workspace /delete /server:http://tfs.mysite.com:8080/tfs/defaultcollectiondevshed22;Warren

                  【讨论】:

                    【解决方案14】:

                    转到 VS 命令提示符并键入以下内容:

                    tf 工作区

                    这将为您提供可用的集合。复制您想要的集合的路径(本质上是一个 URL)。然后输入以下内容:

                    tf workspaces /updateComputerName:"OLD_NAME" /collection:"从上面复制的 URL"

                    (不包括上面的引号)

                    【讨论】:

                    • 感谢您添加有关如何查看所有集合 URL 的信息
                    • 一步一步给人信心。我担心接受的答案中的端口“:8080”,这证实了需要什么。 - 谢谢
                    【解决方案15】:

                    用户回答:开放和免费为我工作。 文件 -> 源代码管理 -> 高级 -> 工作区

                    这将打开一个标题为“管理工作区”的窗口。 勾选“显示远程工作区”,它显示了阻止 .cs 文件更改的工作区。我删除了,现在工作正常:)

                    【讨论】:

                    • 谢谢曼迪。这是简单的步骤,也适用于我。
                    猜你喜欢
                    • 2013-04-19
                    • 1970-01-01
                    • 1970-01-01
                    • 1970-01-01
                    • 1970-01-01
                    • 1970-01-01
                    • 2020-10-06
                    • 2015-04-29
                    • 1970-01-01
                    相关资源
                    最近更新 更多