在 TFS 中向现有解决方案添加新项目

我使用 TFS 将一个项目添加到现有的解决方案中,该解决方案目前处于源代码控制之下,但由于某种原因,我无法签入新项目。当我查看挂起的更改时,新项目中的所有文件都不会显示。没有一个文件在它们旁边有加号(对于一个新文件)。我做错了什么?我该怎么补救?是时候登记了。

54339 次浏览

不幸的是,我敢打赌,您最好的选择是通过命令行手动执行签入。我曾经遇到过这样的情况: Team Explorer UI 与源代码控制中实际发生的事情不同步,而通过 tf.exe 手动修复是解决这个问题的唯一方法。

也就是说,正常情况下向解决方案中添加一个新项目并不是一件麻烦事。

TFS 可能根本不知道您的项目已经存在。只需通过源代码管理资源管理器添加项目文件并重新加载解决方案。

在加载解决方案时,它可以要求您将项目绑定到源代码管理。让它通过点击 Bind 按钮这样做-它应该为你做所有的魔术。

转到源代码管理资源管理器,浏览到树中与解决方案的新项目所在位置匹配的位置。把文件添加到那里。

但是,我担心的是您修改了解决方案文件,而且它没有要求您检查该文件。您可能想尝试做的是手动签出解决方案文件,然后将项目读入解决方案,看看是否需要这样做。

您不需要跳转到命令行-这是一个非常简单的操作。

  • 确保您得到了解决方案的最新版本
  • 查看解决方案文件
  • 添加新项目

如果新添加的项目之前处于(另一个)源代码控制之下,这可能会把事情搞砸,那么在添加之前一定要“解除绑定”。(请参见 VisualStudio 中“ file”菜单下的源代码管理绑定)

您不应该需要命令行。

打开解决方案。选择项目(确保它在解决方案中)。

File-> Source Control-> Properties 将打开绑定对话框。

将项目绑定到源代码管理。

你现在应该看到 + 标志旁边的所有文件。关键是。将为项目添加 vssscc 到版本控制。

如果失败,请在记事本中打开 csproj (备份之后) ,并确保删除了所有版本控制绑定,然后再试一次。

问题是解决方案失去了约束力。这就是为什么在添加新项目时它不会自动签出的原因。

要在 VS2010中恢复绑定,请转到 File-> Source Control-> Change Source Control。寻找“解决方案: 解决方案的名称”,如果它没有绑定它将说“没有服务器”。单击它,然后从工具栏上单击“绑定”。

在 Visual Studio 2012/2013中,它的文件-> 源代码管理-> 高级-> 更改源代码管理(感谢 danglund)。

这将创建一个正确绑定的新 vssscc 文件。现在添加新项目,一切都应该正常工作。

我也有同样的问题,我是这样解决的:

转到 Visual Studio: File-> Source Control-> Change Source Control 在那里找到你的项目,它的状态将是“无效”,点击它,然后按“取消绑定”。现在返回解决方案资源管理器并删除项目。再次将此项目添加到解决方案资源管理器中以解决该问题。

祝你好运!

  1. 在源代码管理资源管理器中单击 TeamProject 名称
  2. 文件-> 源代码管理-> 向文件夹添加项..。
  3. 跟着向导。

我在 VS 2019中遇到过同样的问题,我在现有解决方案中添加了一个新项目,但是该项目没有显示在未决的更改中。右键单击该项目并转到源代码管理只有一个“向源代码管理添加解决方案”选项。

使用上面的答案,我开始在文件-> 源代码控制路径,然后产生一个选项,直接“添加选定的项目到源代码控制”。采用该选项解决了问题,因此现在新项目显示在未决的更改中。注意: 我添加了这个答案,因为它在 VS 2019中仍然是一个问题,但是现在有了一个比过去更容易的解决方案。