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

标签 git jenkins jenkins-plugins

错误:

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/37613370/

相关文章:

git - Visual Studio Code 自动推送

Docker Jenkins 无法加载插件

java - 是否有任何用于 Mercurial 代码审查的 Jenkins 插件?

git rebase -i --retain-empty-commits

java - 如何在 jgit 中调用 git show --first-parent?

Jenkins:外部节点无法在 Kubernetes 上注册到 master

linux - Jenkins 中的什么目录 shell 命令执行?

if-statement - Jenkins 灵活发布插件 if else 条件

git - 如何在我的 Jenkins 控制台日志中查看构建的 git 命令输出?

git - Kubuntu/Windows 7 双启动和 git