Visual Studio 2019 中的绑定无效



我知道这是一个非常常见的问题,因为它似乎发生在很多人身上。我发布这个问题是为了看看当我找到的所有解决问题的建议都失败时,我是否有任何选择。

我有一个包含 6 个项目的解决方案,我使用Visual Studio 2019.一切都运行良好,突然之间,看起来我的解决方案不受源代码控制。所有绑定都显示Invalid,尝试修复它们不起作用。

我所做的唯一可能导致问题的事情是VS 2019升级到最新版本,即16.2.5前几天它可用时。在更新之前,我使用的是VS 2019 16.2.4.除此之外,没有任何变化,也没有做任何不寻常的事情。

我的问题是,在互联网上找到的所有建议方法都失败后,我有什么选择?

这是我到目前为止尝试过的方法,但没有任何效果:

  1. 我删除了 .vs 文件夹并打开了解决方案。没用。
  2. 我的解决方案中有 6 个项目。我一个接一个地解开了他们的束缚。然后我逐个卸载每个项目。然后我逐个重新加载每个项目。这并没有解决它。然后,我在"文件>源代码管理"下重新绑定每个项目>"高级>更改源代码管理"。这也没有解决它。

我的解决方案中有新的更改。除了将整个解决方案下载到新文件夹中并手动添加更改之外,我还有哪些选项可以解决此问题?

附言我将Azure DevOpsTFVC一起使用进行源代码管理。

我最近在VS 2017中处理了这两个问题。就我而言,绑定问题是将我的本地文件移动到新计算机时。这不值得赏金,因为这只是我的解决方法,但评论时间太长了。

首先,我在磁盘上的其他位置复制了整个解决方案,以确保不会丢失更改。然后,我可以让绑定工作的唯一方法(令人沮丧的是(,是从源代码管理中重新获取解决方案(必须执行获取特定版本,最新版本,覆盖可写...,并覆盖文件,即使本地版本匹配...(。之后,绑定神奇地工作了(我可能不得不重新启动 VS(。

接下来,您需要将所有更改复制回去。现在如何做到这一点取决于您的情况。如果您知道其他人没有对您编辑的文件进行任何更改,则可以将整个文件替换为包含您的更改的副本。但是,如果其中一个文件在存储库中也有更改的更改,而您更改的本地文件不包含这些更改,则当您签入并执行合并时,它会认为您删除了它们。

如果后一种情况是您,我认为唯一的选择是为每个文件繁琐地复制您的个人更改。在这两种情况下,我发现BeyondCompare对于帮助比较和复制很有用,但看起来你也可以在两个本地文件上使用Visual Studio的合并工具。例如"%VS110COMNTOOLS%/../IDE/vsdiffmerge.exe" "File1" "File2"

正如你提到的,现在你的更改已经完成,你必须让Visual Studio识别它们。由于分支问题,我不得不这样做。为此,您可以在Visual Studio命令提示符下使用tf vc /reconcile。例如:

tf vc /reconcile /promote /adds /deletes /diff /recursive [itemspec]

我还没有找到关于/reconcile的官方文档,但它似乎出去并识别您的本地更改,您可以在其中指定要查找的更改类型 -/adds/deletes/diff。之后,您应该可以办理登机手续。如果解决方案已打开,则可能需要刷新 VS 中的解决方案。

我希望你的问题能得到答案,导致Visual Studio无法将一组完美的本地文件绑定回源代码管理,但希望这同时也有帮助(并且适用于2019和Azure(。

相关内容

  • 没有找到相关文章

最新更新