jenkinsci / jenkinsci/git-client-plugin

[JENKINS-70303] JGit checkout fails if refspec has leading spaces

オープン
#1,663 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
component:git-client-plugin good first issue imported-jira-issue priority:minor resolution:unresolved
主要言語
Java
スター
152
フォーク
402
平均マージ
6時間 47分
マージ済み PR(30日)
4

説明

If a refspec is included in the checkout scm definition of a multibranch Pipeline using JGit for checkout and the refspec has a leading space character, the checkout fails with the JGit message


Remote does not have available for fetch.

The same refspec with leading spaces does not affect command line git checkout. It works in either case with command line git. Leading space handling by command line git is preferred rather than the way that the git client plugin honors the leading spaces and passes them to JGit.

Command line git does not see the issue because extra spaces between arguments of a command line program are generally not an issue. Lucky circumstances that allow the CLI git checkout to be better behaved than the JGit checkout.

Because command line git accepts the leading and trailing spaces, it would be safe for someone to fix this by removing leading and trailing spaces from the refspec value when it is saved and when it is used.

---
Originally reported by markewaite, imported from: JGit checkout fails if refspec has leading spaces


  • assignee: jagrutiti
  • status: In Review
  • priority: Minor
  • component(s): git-client-plugin
  • label(s): newbie-friendly
  • resolution: Unresolved
  • votes: 0
  • watchers: 2
  • imported: 20251211-071809

Raw content of original issue

If a refspec is included in the checkout scm definition of a multibranch Pipeline using JGit for checkout and the refspec has a leading space character, the checkout fails with the JGit message


Remote does not have available for fetch.

The same refspec with leading spaces does not affect command line git checkout. It works in either case with command line git. Leading space handling by command line git is preferred rather than the way that the git client plugin honors the leading spaces and passes them to JGit.

Command line git does not see the issue because extra spaces between arguments of a command line program are generally not an issue. Lucky circumstances that allow the CLI git checkout to be better behaved than the JGit checkout.

Because command line git accepts the leading and trailing spaces, it would be safe for someone to fix this by removing leading and trailing spaces from the refspec value when it is saved and when it is used.

environment

```
Jenknis 2.375.1

Git plugin 4.14.3

Git client plugin 3.13.1
```

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。