Jenkins管道无法克隆Bitbucket存储库

问题描述 投票:0回答:1

我在Jenkins中通过HTTP克隆存储库时遇到问题。仅对于具有12个以上分支或总共18个分支和标签的存储库,才会出现此问题。

运行以下命令:git clone http://USERNAME:[email protected]/scm/key/repo.git

当有11个分支,或总共有17个分支和标签时,克隆工作非常好。如果数字超过该数字,克隆将失败,并显示以下错误:

error: RPC failed; HTTP 500 curl 22 The requested URL returned error: 500 
fatal: The remote end hung up unexpectedly

Bitbucket使用日志级别DEBUG运行,我在日志中找不到更多信息。

服务器上的版本:

Bitbucket服务器5.14.0Git 2.19.0

本地版本:

Git 2.17.1

PS:我没有在代理后面运行Bitbucket。

我已经检查了atlassian-bitbucket.log,它确实显示了与克隆存储库有关的错误:

    The following was written to stderr:
    fatal: the remote end hung up unexpectedly
    com.atlassian.utils.process.ProcessException: Non-zero exit code: 1
    at com.atlassian.bitbucket.scm.SummarizingProcessHandler.complete(SummarizingProcessHandler.java:47)
    ...

我尝试设置postBuffer:git config --global http.postBuffer 524288000

我已经尝试使用用户名和密码作为输入进行克隆,但是在12个以上的分支上仍然失败:git clone http://bitbucket.company.org/scm/key/repo.git

存储库的大小无关紧要,因为我可以用较少的分支克隆大型存储库。

如果使用SSH,它确实可以工作,但这不是我的用例的选择。由于每个发行版都有一个发行分支,并且标记的数量确实会随着时间的增长而增长,所以我希望这对其他人也是一个问题。

当我尝试在Jenkins管道中进行克隆时,我尝试了以下配置,以获取不仅仅是浅层克隆的更多内容。

checkout([
  $class: 'GitSCM',
  branches: scm.branches,
  extensions: [
    [
      $class: 'CloneOption',
      honorRefspec: false,
      noTags: false,
      shallow: false,
    ]
  ],
  userRemoteConfigs: scm.userRemoteConfigs,
])

我希望它能够克隆存储库,无论分支的数量如何。有谁知道为什么会这样吗?任何帮助都将被大大接受。

jenkins bitbucket bitbucket-server
1个回答
0
投票

您是否尝试过带有凭证步骤的常规git步骤?

© www.soinside.com 2019 - 2024. All rights reserved.