Summary
Remove LibGit2Sharp and all shipped native Git binaries in GitVersion v7.1, after the managed backend ships as the v7.0 default under #5135 .
Part of #5031 . The release and selector lifecycle is governed by #5135 , with final environment-variable cleanup in v8 tracked by #5136 .
Remove the legacy backend
Delete src/GitVersion.LibGit2Sharp and new-cli/GitVersion.Core.Libgit2Sharp.
Re-point any remaining source links or consumers to the managed backend.
Drop LibGit2Sharp and native-binary package references.
Add packaging assertions proving shipped packages contain no runtimes/**/native/* entries.
Register the managed backend directly at production composition roots.
Remove dual-backend validation scaffolding
Collapse the unit-test git_backend matrix to managed-only execution.
Collapse Docker and artifact tests to one managed-backend path.
Remove backend inputs and environment forwarding from reusable workflows/actions and build utilities.
Delete dual-backend parity tests and libgit2-only test visibility grants.
Remove corpus tooling whose purpose is comparing managed and libgit2 results.
Keep managed-only tests that originated from parity work.
Retain the v7 selector compatibility shell
Do not remove recognition of GITVERSION_GIT_BACKEND in this issue:
GITVERSION_GIT_BACKEND=libgit2 fails with an actionable message that the backend was removed in v7.1.
GITVERSION_GIT_BACKEND=managed remains accepted as a no-op throughout v7.x so explicit v7.0 opt-in automation keeps working.
The selector and its compatibility diagnostics are removed in v8 by Remove feature-selector environment variables #5136 .
The implementation no longer performs backend selection after this issue; only the v7 compatibility validation remains.
Documentation
Update the managed-Git design/status and v6-to-v7 migration documentation to show managed as the v7.0 default and LibGit2Sharp removal in v7.1.
Document the v7.1 error for GITVERSION_GIT_BACKEND=libgit2 and the v8 removal tracked by Remove feature-selector environment variables #5136 .
Acceptance criteria
Shipped packages contain no LibGit2Sharp assemblies or native Git binaries.
Production and CI use only the managed backend.
No dual-backend selection or comparison infrastructure remains, apart from the v7 environment-variable compatibility validator.
Legacy selection fails clearly and explicit managed remains harmless in v7.x.
Summary
Remove LibGit2Sharp and all shipped native Git binaries in GitVersion v7.1, after the managed backend ships as the v7.0 default under #5135.
Part of #5031. The release and selector lifecycle is governed by #5135, with final environment-variable cleanup in v8 tracked by #5136.
Remove the legacy backend
src/GitVersion.LibGit2Sharpandnew-cli/GitVersion.Core.Libgit2Sharp.runtimes/**/native/*entries.Remove dual-backend validation scaffolding
git_backendmatrix to managed-only execution.Retain the v7 selector compatibility shell
Do not remove recognition of
GITVERSION_GIT_BACKENDin this issue:GITVERSION_GIT_BACKEND=libgit2fails with an actionable message that the backend was removed in v7.1.GITVERSION_GIT_BACKEND=managedremains accepted as a no-op throughout v7.x so explicit v7.0 opt-in automation keeps working.The implementation no longer performs backend selection after this issue; only the v7 compatibility validation remains.
Documentation
GITVERSION_GIT_BACKEND=libgit2and the v8 removal tracked by Remove feature-selector environment variables #5136.Acceptance criteria
managedremains harmless in v7.x.