Skip to content

Commit 9aa4c70

Browse files
committed
disables task on msbuild version <18
disables GitVersion task on .NET Framework with MSBuild < 18. updates conditions for UsingTask to use explicit string comparisons.
1 parent 86c6645 commit 9aa4c70

File tree

2 files changed

+15
-9
lines changed

2 files changed

+15
-9
lines changed

src/GitVersion.MsBuild/msbuild/tools/GitVersion.MsBuild.props

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,12 @@
2121
</PropertyGroup>
2222

2323
<PropertyGroup>
24+
<!-- The GitVersion task is explicitly disabled when running on the .NET Framework with MSBuild version lower than 18
25+
or in Visual Studio 2022 or earlier (which uses MSBuild version 17 and below). In these scenarios,
26+
the task will be turned off because Visual Studio operates on the .NET Framework's version of MSBuild.
27+
However, it is supported from msbuild version 18 or Visual Studio 2026, or using the .NET version `dotnet build` -->
28+
<DisableGitVersionTask Condition=" '$(MSBuildRuntimeType)' == 'Full' AND $([System.Version]::Parse('$(MSBuildVersion)').Major) &lt; 18 ">true</DisableGitVersionTask>
29+
2430
<DisableGitVersionTask Condition=" '$(DisableGitVersionTask)' == '' ">false</DisableGitVersionTask>
2531

2632
<!-- Property that enables WriteVersionInfoToBuildLog -->

src/GitVersion.MsBuild/msbuild/tools/GitVersion.MsBuild.targets

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,15 @@
1818
<GitVersionAssemblyFile Condition="'$(GitVersionAssemblyFile)' == ''">$([MSBuild]::EnsureTrailingSlash($(MSBuildThisFileDirectory)$(GitVersionTargetFramework)))GitVersion.MsBuild.dll</GitVersionAssemblyFile>
1919
</PropertyGroup>
2020

21-
<UsingTask TaskName="GetVersion" AssemblyFile="$(GitVersionAssemblyFile)" Runtime="NET" TaskFactory="TaskHostFactory" Condition="$(MSBuildRuntimeType) == 'Full'" />
22-
<UsingTask TaskName="GenerateGitVersionInformation" AssemblyFile="$(GitVersionAssemblyFile)" Runtime="NET" TaskFactory="TaskHostFactory" Condition="$(MSBuildRuntimeType) == 'Full'" />
23-
<UsingTask TaskName="WriteVersionInfoToBuildLog" AssemblyFile="$(GitVersionAssemblyFile)" Runtime="NET" TaskFactory="TaskHostFactory" Condition="$(MSBuildRuntimeType) == 'Full'" />
24-
<UsingTask TaskName="UpdateAssemblyInfo" AssemblyFile="$(GitVersionAssemblyFile)" Runtime="NET" TaskFactory="TaskHostFactory" Condition="$(MSBuildRuntimeType) == 'Full'" />
25-
26-
<UsingTask TaskName="GetVersion" AssemblyFile="$(GitVersionAssemblyFile)" Runtime="NET" Condition="$(MSBuildRuntimeType) == 'Core'" />
27-
<UsingTask TaskName="GenerateGitVersionInformation" AssemblyFile="$(GitVersionAssemblyFile)" Runtime="NET" Condition="$(MSBuildRuntimeType) == 'Core'" />
28-
<UsingTask TaskName="WriteVersionInfoToBuildLog" AssemblyFile="$(GitVersionAssemblyFile)" Runtime="NET" Condition="$(MSBuildRuntimeType) == 'Core'" />
29-
<UsingTask TaskName="UpdateAssemblyInfo" AssemblyFile="$(GitVersionAssemblyFile)" Runtime="NET" Condition="$(MSBuildRuntimeType) == 'Core'" />
21+
<UsingTask TaskName="GetVersion" AssemblyFile="$(GitVersionAssemblyFile)" Runtime="NET" TaskFactory="TaskHostFactory" Condition=" '$(MSBuildRuntimeType)' == 'Full' " />
22+
<UsingTask TaskName="GenerateGitVersionInformation" AssemblyFile="$(GitVersionAssemblyFile)" Runtime="NET" TaskFactory="TaskHostFactory" Condition=" '$(MSBuildRuntimeType)' == 'Full' " />
23+
<UsingTask TaskName="WriteVersionInfoToBuildLog" AssemblyFile="$(GitVersionAssemblyFile)" Runtime="NET" TaskFactory="TaskHostFactory" Condition=" '$(MSBuildRuntimeType)' == 'Full' " />
24+
<UsingTask TaskName="UpdateAssemblyInfo" AssemblyFile="$(GitVersionAssemblyFile)" Runtime="NET" TaskFactory="TaskHostFactory" Condition=" '$(MSBuildRuntimeType)' == 'Full' " />
25+
26+
<UsingTask TaskName="GetVersion" AssemblyFile="$(GitVersionAssemblyFile)" Runtime="NET" Condition=" '$(MSBuildRuntimeType)' == 'Core' " />
27+
<UsingTask TaskName="GenerateGitVersionInformation" AssemblyFile="$(GitVersionAssemblyFile)" Runtime="NET" Condition=" '$(MSBuildRuntimeType)' == 'Core' " />
28+
<UsingTask TaskName="WriteVersionInfoToBuildLog" AssemblyFile="$(GitVersionAssemblyFile)" Runtime="NET" Condition=" '$(MSBuildRuntimeType)' == 'Core' " />
29+
<UsingTask TaskName="UpdateAssemblyInfo" AssemblyFile="$(GitVersionAssemblyFile)" Runtime="NET" Condition=" '$(MSBuildRuntimeType)' == 'Core' " />
3030

3131
<Target Name="RunGitVersion" Condition="'$(DisableGitVersionTask)' == 'false'">
3232
<Exec Command="$(GitVersionFileExe) &quot;$(MSBuildProjectDirectory)&quot; $(GitVersion_ToolArgments)" />

0 commit comments

Comments
 (0)