如何确定 TFS 签入期间使用的 Visual studio 版本
How to determine which Visual studio version used during TFS checkin
我正在使用 TFS 服务器 2015。我有不同类型的项目使用不同版本的 Visual studio:2012/2015/2017/2019。从 TFS 我如何确定在签入 TFS 期间使用哪个版本。
同时,我也想知道TFS Build使用的是哪个MS Build版本。
如果您转到诊断面板(需要管理员权限),您可以看到 TFS/Azure DevOps Server 接收的命令和传入的用户代理:
您可以在其中找到它
https://server/_oi
https://server/tfs/_oi
用户代理包含 TFS 客户端对象模型的版本,与人们进行 TFS 相关工作时的 Visual Studio 版本相匹配。
MSSCCI 提供程序的使用将显示与 Visual Studio 版本不同的对象模型版本。因为这些将记录启动的团队资源管理器的版本。
无法从服务器日志中检测到 MsBuild 版本,但 csproj 文件将指示 .NET Framework 版本和使用的 MsBuild 版本。应该可以直接从源代码管理中解析出这些信息。
ToolsVersion attribute 应该提供了一个很好的提示。
The ToolsVersion
attribute is also used for project migration. For example, if you open a Visual Studio 2008 project in Visual Studio 2010, the project file is updated to include ToolsVersion="4.0"
. If you then try to open that project in Visual Studio 2008, it doesn't recognize the upgraded ToolsVersion
and therefore builds the project as though the attribute was still set to 3.5
.
Visual Studio 2010 and Visual Studio 2012 use a ToolsVersion
of 4.0
. Visual Studio 2013 uses a ToolsVersion
of 12.0
. Visual Studio 2015 uses ToolsVersion
14.0
, and Visual Studio 2017 uses ToolsVersion
15.0
.
第二个 VisualStudioVersion 也可能存在:
Sub-toolsets become active in the presence of the VisualStudioVersion
build property. This property may take one of these values:
"10.0" specifies the .NET Framework 4 sub-toolset
"11.0" specifies the .NET Framework 4.5 sub-toolset
"12.0" specifies the .NET Framework 4.5.1 sub-toolset
Sub-toolsets 10.0 and 11.0 should be used with ToolsVersion 4.0. In
later versions, the sub-toolset version and the ToolsVersion should
match.
我正在使用 TFS 服务器 2015。我有不同类型的项目使用不同版本的 Visual studio:2012/2015/2017/2019。从 TFS 我如何确定在签入 TFS 期间使用哪个版本。 同时,我也想知道TFS Build使用的是哪个MS Build版本。
如果您转到诊断面板(需要管理员权限),您可以看到 TFS/Azure DevOps Server 接收的命令和传入的用户代理:
您可以在其中找到它
https://server/_oi
https://server/tfs/_oi
用户代理包含 TFS 客户端对象模型的版本,与人们进行 TFS 相关工作时的 Visual Studio 版本相匹配。
MSSCCI 提供程序的使用将显示与 Visual Studio 版本不同的对象模型版本。因为这些将记录启动的团队资源管理器的版本。
无法从服务器日志中检测到 MsBuild 版本,但 csproj 文件将指示 .NET Framework 版本和使用的 MsBuild 版本。应该可以直接从源代码管理中解析出这些信息。
ToolsVersion attribute 应该提供了一个很好的提示。
The
ToolsVersion
attribute is also used for project migration. For example, if you open a Visual Studio 2008 project in Visual Studio 2010, the project file is updated to includeToolsVersion="4.0"
. If you then try to open that project in Visual Studio 2008, it doesn't recognize the upgradedToolsVersion
and therefore builds the project as though the attribute was still set to3.5
.Visual Studio 2010 and Visual Studio 2012 use a
ToolsVersion
of4.0
. Visual Studio 2013 uses aToolsVersion
of12.0
. Visual Studio 2015 usesToolsVersion
14.0
, and Visual Studio 2017 usesToolsVersion
15.0
.
第二个 VisualStudioVersion 也可能存在:
Sub-toolsets become active in the presence of the
VisualStudioVersion
build property. This property may take one of these values:"10.0" specifies the .NET Framework 4 sub-toolset
"11.0" specifies the .NET Framework 4.5 sub-toolset
"12.0" specifies the .NET Framework 4.5.1 sub-toolset
Sub-toolsets 10.0 and 11.0 should be used with ToolsVersion 4.0. In later versions, the sub-toolset version and the ToolsVersion should match.