将备份目录替换为备份后,VSTS源控件绑定无效
问题描述:
我在ASP.NET解决方案中更改了许多文件并签入。之后,我意识到我想回到我的原始文件。我知道我可以刚刚访问源代码管理器并回滚了变更集,但是我错了。由于我在完成之前对整个项目目录进行了备份,我认为只需用备份的文件替换目录就简单了。将备份目录替换为备份后,VSTS源控件绑定无效
与备份替换整个目录,当我打开该解决方案我收到以下消息后:
一个或多个这种解决方案源代码管理绑定无效 和下面列出。源控制绑定可以通过 修改主菜单中的选择文件,源代码管理,高级,更改源控制 。
然后所有的.csproj文件列在下面。
我按照我在许多网站上看到的说明解除绑定然后重新绑定,它对我没有任何帮助。
我的第一个问题是为什么会发生这种情况,如果它是具有所有源控件绑定的相同的文件集合。
我的第二个问题是我怎么能再次在源代码管理中获得这个备份解决方案?
我期望它在源代码控制中显示待处理的更改,以便在我签入源代码管理中的最新版本时将成为我的替换版本。
答
与windows文件系统不同,你不应该简单地复制和过去备份文件。如你遇到的那样,它肯定会导致源控制绑定冲突。
您应该使用回滚整个变更集功能。这会影响你在TFS中的源代码控制。如果您将文件回滚到较早版本,则tfs将消除在该版本之后发生的所有变更集的影响。更多详情请看本教程:Roll back changesets
由于您只需要返回旧版本文件,现在可以将您的变更集回滚到备份整个项目的变更集。检查回滚操作。
另一种方法是如下如果取消绑定/重新绑定项目是不行的:
-
在更改源代码管理
- 拆散项目
- 卸载项目在解决方案资源管理器
- 刷新项目在解决方案资源管理器
注意:如果您使用上述选项,TFS将所有项目文件视为解决方案中新添加的文件。
你采用了哪种方法?你是如何设法最终解决这个问题的? –
@ Patrick-MSFT我意识到最好的解决方案不是在我的桌面上使用备份副本。我相信它和其中的vscss文件以及实际的源代码管理有些干扰。相反,我采取另一种方法。我彻底清除了本地机器上的所有内容。将最新的代码从源代码控制下拉到我的机器上,这是我不想要的签入代码。然后从源代码管理器浏览器中,我做了一个RollBack到我想要的版本。然后终于检查了回滚。 –