gpt4 book ai didi

Jenkins 的 git 插件无法从本地计算机克隆存储库。错误代码 128

转载 作者:IT王子 更新时间:2023-10-29 01:28:20 25 4
gpt4 key购买 nike

错误:

Failed to connect to repository : Command "/usr/bin/git ls-remote -h file:///home/myuser/path/to/project HEAD" returned status code 128:
stdout:
stderr: fatal: 'home/myuser/path/to/project' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

我尝试了以下方法:

  • chmod 777 到repo文件夹(包含.git目录的文件夹)
  • chowned 到 repo 文件夹中的 jenkins:jenkins
  • 尝试从这个本地 repo 文件夹克隆到另一个文件夹:这有效!

当我运行上面的命令时:/usr/bin/git ls-remote -h file:///home/myuser/path/to/project HEAD on cmd 我得到了分支。

我的问题是:

  1. 为什么 git ls-remote -h ... 命令在应该是 git clone ... 时被调用?
  2. 如何配置 jenkins git 插件以从本地 repo 获取代码

我的环境:

RHEL 5.9

Jenkins 1.519 作为服务安装(无 Web 容器)

Git plugin

最佳答案

安装时Jenkins作为一项服务,默认情况下,Jenkins不创建用户目录,如:/home/jenkins . Jenkins 默认主目录设置为 /var/lib/jenkins .正如您所期望的那样,根据我的解决方法,jenkins从其他用户目录访问本地资源时遇到问题。

我将克隆的存储库移至 Jenkins 默认主目录下,即 /var/lib/jenkins 下所以我的Repository URL在 Jenkins 项目配置中看起来像:file:///${JENKINS_HOME}/repo/<myprojectname>

更新:以上工作正常......但我从this blog找到了更好的方法

步骤如下:

查找/etc/init.d/jenkins脚本。有几个$JENKINS定义的变量.这应该会引导您到 sysconfig对于 Jenkins ,即 /etc/sysconfig/jenkins .停止你的 Jenkins 实例:

sudo /sbin/service jenkins stop

备份

cp /etc/sysconfig/jenkins /etc/sysconfig/jenkins.bak

在此文件中,更改以下属性:

$JENKINS_USER="<your desired user>"

更改所有相关 Jenkins 目录的所有权:

chown -R <your desired user>:<your user group> /var/lib/jenkins

chown -R <your desired user>:<your user group> /var/cache/jenkins

chown -R <your desired user>:<your user group> /var/log/jenkins

重启 jenkins 错误应该消失

sudo /sbin/service jenkins start

这个错误现在应该消失了!

关于Jenkins 的 git 插件无法从本地计算机克隆存储库。错误代码 128,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17307938/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com