关于Team Foundation Server的(TFS)源代码控制...如何将项目的状态从Invalid
更改为Valid
?
我们正在重组几个解决方案& TFS中的项目。在这种情况下:
在Visual Studio中......
MyWorkspace
=> 编辑... => 高级的
MySolution.sln
)
GlobalSection(TeamFoundationVersionControl) = preSolution
SccProjectName
SccAuxPath
SccLocalPath
SccProvider
MySolution
MySolution
和MyProject
列为Not Controlled
MySolution
和绑定 MyProject
列为Not Controlled
MyProject
和绑定
MyProject
现已标记为Invalid
答案 0 :(得分:0)
通常我会避免检查不是[1]可编译的代码,并且[2]准备好生产(或者至少准备好进行QA)。
在这种情况下,我决定忽略自己的规则,现在我付出了代价:(
虽然使用TFS Move
命令正确更改了项目位置,但是一些C ++项目的引用指向了旧路径。因此,这些项目的 Binding 状态为Invalid
:
MyProject
=> ThirdPartyLib
过滤器=> HeaderOfSomeLibraryFile.h
MyProject.vcxproj
的项目引用无效。
MyProject
=> Properties
=> Common Properties
=> References
纠正这些问题后,MyProject.vcxproj
绑定状态会自动切换为Valid
。
答案 1 :(得分:0)
今天我遇到了同样的问题。在尝试了不同的方法之后,我发现当前解决方案中的两个文件被忽略了(它们没有添加到TFS repo中)。在我的情况下,我有2个自定义" .config"文件。
手动添加这些文件后,状态更改为“有效”状态。并且绑定现在正在运行。
答案 2 :(得分:0)
我找到了两种解决方案:
取消绑定,卸载项目,然后重新加载。 来自Binding Invalid。
删除不在源代码管理中的文件。来自Solving the "Some projects have been bound to server locations that may be incorrect." in Visual Studio 2010 when using Team Foundation System 2010:如果无法在本地找到一定比例的解决方案项,并且不在版本控制系统中,则Visual Studio会将与版本控制系统绑定的解决方案标记为“无效”。
就我而言,这是因为Angular构建会生成许多文件,而我使用.tfignore来阻止它们被检入。 Visual Studio 2019找到了``它不包含大多数项目文件'',并将该项目标记为``无效''。删除这些文件后,它将自动变为“有效”。因此,“无效”状态只是一种误导/无用的警告。您可以忽略该警告,因为没有什么是真正的“无效”。