We have noticed that sonar cloud steps are failing in our builds while using blobless clones. This is a huger blocker for us as sonar is a gatekeeper for getting our PRs merged across projects.
Sonar community is starting to be aware of this issue, but they do not have any permanent solutions yet.
opened 01:31PM - 22 Feb 24 UTC
enhancement
### Description
[Blobless](https://github.blog/2020-12-21-get-up-to-speed-with-… partial-clone-and-shallow-clone/#user-content-blobless-clones) clones are a suggested optimization to clone large repositories.
`git clone --filter=blob:none <url>`
The native Git CLI will lazy load blobs on-demand, but JGit simply fails:
```
$ ./org.eclipse.jgit.pgm-6.8.0.202311291450-r.sh blame build.gradle
fatal: Missing blob fc321990ffac88fc65d90d41c483db443833aa93
```
### Motivation
I am not sure this is a popular practice to use blobless clones on developer machines, so this is likely not a use case for EGit.
But for other use cases where JGit is used on CI/CD platforms (Jenkins, Maven, Sonar, ...) it would be great to support this feature.
### Alternatives considered
The current alternative is to ask users to not use blobless clones, or to stop using JGit and use the native Git CLI.
### Additional context
https://community.sonarsource.com/t/missing-blob-jgit-error-with-sonarcloud/109574
https://community.sonarsource.com/t/scan-on-git-blobless-clone-failed/106038
How can we revert to old checkout methods?