Open
Description
Feature description
Currently only .NET 8 is targeted (https://github.com/git-ecosystem/git-credential-manager/blob/main/src/shared/Git-Credential-Manager/Git-Credential-Manager.csproj); if you install a new machine from scratch and install .NET, you won't have .NET 8 - just .NET 9 as current. This means that gcm complains "You must install or update .NET to run this application":
$ git-credential-manager configure
You must install or update .NET to run this application.
App: /home/marc/.dotnet/tools/git-credential-manager
Architecture: x64
Framework: 'Microsoft.NETCore.App', version '8.0.11' (x64)
.NET location: /usr/lib/dotnet
The following frameworks were found:
9.0.3 at [/usr/lib/dotnet/shared/Microsoft.NETCore.App]
Learn more:
https://aka.ms/dotnet/app-launch-failed
To install missing framework, download:
https://aka.ms/dotnet-core-applaunch?framework=Microsoft.NETCore.App&framework_version=8.0.11&arch=x64&rid=ubuntu.24.10-x64&os=ubuntu.24.10
This can be done by multi-targeting, for example net8 and net9:
<TargetFrameworks>net8.0;net9.0</TargetFrameworks>
or perhaps more simply by enabling roll-forward:
<RollForward>Major</RollForward>
in the csproj like this. This is similar to running the tool with the --roll-forward Major
switch, except because it is automatic, it should work when called indirectly (which gcm is).