Issue
Git exception: Filename too long during checkout
A git checkout fails with an exception similar to:
Checking out Revision xxx
hudson.plugins.git.GitException: Could not checkout xxx
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$9.execute(CliGitAPIImpl.java:2005)
at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1124)
at org.jenkinsci.plugins.workflow.steps.scm.SCMStep.checkout(SCMStep.java:109)
at org.jenkinsci.plugins.workflow.cps.CpsScmFlowDefinition.create(CpsScmFlowDefinition.java:108)
at org.jenkinsci.plugins.workflow.multibranch.SCMBinder.create(SCMBinder.java:85)
at org.jenkinsci.plugins.workflow.job.WorkflowRun.run(WorkflowRun.java:207)
at hudson.model.ResourceController.execute(ResourceController.java:98)
at hudson.model.Executor.run(Executor.java:410)
Caused by: hudson.plugins.git.GitException: xxxx checkout -f xxx returned status code 128:
stdout:
stderr: fatal: cannot create directory at 'xxxx': Filename too long
Environment
CloudBees Jenkins Enterprise
Jenkins
Resolution
In order for Git to handle long filenames correctly, core.longpaths=true needs to be enabled.
To set this argument you can do the following:
git config --global core.longpaths true
3 Comments