A question regarding checkout scm step

Hey Experts
Might be trivial but, when Jenkinsfile declarative pipeline does a scm-checkout, which plugin governs the git version and timeout

[Pipeline] {
[Pipeline] stage
[Pipeline] { (Declarative: Checkout SCM)
[Pipeline] checkout
The recommended git tool is: git
using credential ***
Cloning the remote Git repository
Cloning with configured refspecs honoured and without tags
Cloning repository https://*****.git
 > git init /home/jenkins/agent/workspace/**** # timeout=10
Fetching upstream changes from https://****git
 > git --version # timeout=10
 > git --version # 'git version 2.20.1'

I want to update the git version to 2.43.x

Regards
Me :slight_smile:

:red_question_mark: git-client Git client

Usually git-client plugin is using the git that is installed on the machine. Afaik you can also make it use jgit (not for large repos). You can configure under Manage Jenkins → Tools the git installations, there you also have the option to install it automatically, but I don’t know how well this works when you have different platforms. I think most people rely on the git that is installed on the machine.

The timeout is configurable, when configuring a pipeline or when using the snippet generator click on the Add at Additional Behaviours and then choose Advanced clone behaviours. For checkout timeout choose Advanced checkout behaviours

That helped @mawinter69

Receiving objects:  92% (1512/1643), 15.01 GiB | 17.85 MiB/s   
Receiving objects:  92% (1522/1643), 15.03 GiB | 17.91 MiB/s   
error: index-pack died of signal 15
fatal: index-pack failed

Lately, git clones for larger repository randonly fails with fatal: index-pack failed. We don’t see issues with repositories less than 1GB while performing scm checkouts.

Checking shallow clone with depth 1 helps