【问题标题】:Visual Studio Team Services: new project binds to old projects bindingsVisual Studio Team Services:新项目绑定到旧项目绑定
【发布时间】:2017-07-19 11:43:09
【问题描述】:

我设法混淆了 Visual Studio Team Services。

在 VSTS 中,我为不同的客户提供了多个项目。 每个客户都有多个解决方案。

我复制了几个网络项目,将它们作为其他工作的基础,并独立地对它们进行了更改..

这让 TFS 感到困惑,现在我的一些项目(以及它们的所有历史记录)现在从 Visual Studio Team Services 中消失了。

我的开发机器上有当前代码。

为了纠正这个问题,我想我只需将解决方案复制到一个新的子目录,删除 vss 文件,更新 guid 并重新加载到 Visual Studio Team Services 中——这不起作用:-(

所以有了明确的细节,以下是我遵循的步骤:

我将 TFS 中存在的一个项目复制(使用资源管理器)到主 SCCS 目录的新子目录中。

然后我重命名了原始项目的根文件夹(使用资源管理器)

然后我(在新项目文件夹中)删除了 .vss 和 .vssscc 文件以及 .vs 目录

我在 Visual Studio 2015 中生成了一个新的 GUID

我打开了 .sln 文件(在记事本中)并且: 将 Project 行和 ProjectConfigurationPlatforms Lines 中的项目 guid 替换为新的 GUID 和 删除了 GlobalSection(TeamFoundationVersionControl)。

然后我删除了文件并清空了以下目录的回收站

C:\Users\USERNAME\AppData\Local\Microsoft\Team Foundation\6.0\Cache C:\Users\USERNAME\AppData\Local\Microsoft\Team Foundation\7.0\Cache

当我在 Visual Studio 中打开新项目时,一些文件被标记为仍在 TFS 中并带有绿色勾号。

我转到文件-> SourceControl-> 高级和取消绑定项目和解决方案,保存并关闭。

这也从原始项目中删除了源代码控制!

然后重新打开新解决方案,连接到 Visual Studio Team Services,连接到此特定客户端的团队项目

我去了文件-> SourceControl->高级并将项目和解决方案都绑定到Source Control。

然后在 Pending Changes 部分,在 Excluded Changes 部分,它列出了原始项目的所有文件!

并且在包含的更改中包含一个不在解决方案资源管理器中的文件..

谁能告诉我我错过了什么步骤,因为这应该是一个简单的任务 - 当然。

还有其他缓存要删除吗?

我需要删除 Visual Studio Team Services 中的解决方案吗?

【问题讨论】:

    标签: visual-studio-2015 azure-devops


    【解决方案1】:

    您还需要更新项目文件:删除

      <SccProjectName>SAK</SccProjectName>
        <SccLocalPath>SAK</SccLocalPath>
        <SccAuxPath>SAK</SccAuxPath>
        <SccProvider>SAK</SccProvider>
    

    简单的步骤:

    1. 将解决方案文件夹复制到未包含在任何工作区中的其他位置
    2. 删除 *.vspscc 文件和 .vs 文件夹
    3. 编辑 .sln 文件以删除 GlobalSection(TeamFoundationVersionControl)… 部分
    4. 编辑项目文件以删除 &lt;Scc….&gt; 部分

    顺便说一句:您不需要更新项目 GUID。

    【讨论】:

    • 感谢您的帮助,我真的很感激。
    • 不幸的是它是一个网络项目并且没有项目文件 - 你能更明确一点 - 我已经检查了隐藏文件
    • 啊,第一点可能是关键:将解决方案文件夹复制到未包含在任何工作区中的其他地方让我试试..
    • 忽略我的第一条评论 - SAK 引用位于 WebsiteProperties 部分的解决方案文件中
    • 不走运,我什至将解决方案文件中的项目和 SCCS 工作区外部新文件夹中的目录重命名为 :-( 当我将项目添加到 SourceControl 时,它必须仍将其链接到旧项目不知何故
    【解决方案2】:

    在与 Microsoft 支持人员交谈后,事实证明我们所做的一切都是正确的,按照下面“starain-MSFT”的简明指南,但最后通过打开解决方案并右键单击添加到源代码来添加到源代码控制步骤控制有问题。

    我最终使用的方法是:

    1. 将解决方案文件夹复制到未包含在任何工作区中的其他位置(此时我也重命名了项目)
    2. 删除 *.vspscc 文件和 .vs 文件夹
    3. 编辑 .sln 文件/项目文件以删除部分
    4. 编辑 .sln 文件以删除 GlobalSection(TeamFoundationVersionControl)… 部分

    此时我还创建了一个新的项目 guid 并将其插入到 Project 和 GlobalSection(ProjectConfigurationPlatforms)... 部分。

    然后对我有用的是打开 Visual Studio,然后打开源安全资源管理器(查看其他 Windows-> 源安全资源管理器)并选择将项目添加到文件夹

    感谢 starain-MSFT 的帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-20
      • 2023-04-08
      • 2016-07-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多