gpt4 book ai didi

linux - Git ls-remote 在 RHEL 中不返回数据

转载 作者:太空宇宙 更新时间:2023-11-04 03:52:51 24 4
gpt4 key购买 nike

我们正在开发一个项目,其中所有开发环境都使用 Vagrant 运行 Ubuntu 14.04 实例。我们的 CI 构建和部署服务器正在运行 RHEL 6.5。我们使用 DUO 构建 Nodejs 组件,并在构建时以编程方式从 git url 克隆依赖项。我们发现这在 Ubuntu 上一直有效,但在 RHEL 上却挂起。当我们仔细观察时,我们发现以下命令有问题:

git ls-remote --tags --heads https://<username>:<authtoken>@github.com/<path-to-repo>

当它在我们的构建服务器实例上运行时,不会返回任何数据,但在我们的 Ubuntu 上运行良好。

为了进行调试,我在云中使用了 RHEL 实例,发现可以通过从 OTB 附带 RHEL 的 1.7.x 版 git 升级到 1.9.4 来解决问题。但这对构建实例不起作用。我看不到这两个实例的 git 配置有任何差异。由于我无法定期访问构建服务器,因此我找到了一个 Centos 镜像,可以在其中重现该问题。我已经删除了它和我的 ubuntu 镜像上的 git 配置设置,因此它们是相同的。我看不出是什么导致了问题。

有什么想法吗?

最佳答案

过了一段时间,我们找到了我们认为的答案。当您通过 yum 安装 git 1.7 时,您会获得一个依赖项 perl-Git。我们遇到的最初问题是,在 1.7 版本下,使用 github token 下载 git repo 组件时会出现密码提示。这显然是 CI 环境中的一个问题,因为没有人会在那里输入密码。

通过升级到更新版本的 git(在我们的例子中是 1.9.4,我们从源代码构建)解决了最初的问题。这就是本文中提到的问题所在,其中 git ls-remote 没有返回任何内容。当我们删除旧 1.7 安装中残留的 perl-Git 后,这个问题就消失了。

我们原本希望从源代码构建 1.7 并在没有 perl-Git 的情况下进行安装,看看所有问题是否都消失了,但我们没有时间了。所以现在,我们认为答案与 perl-Git 包有冲突。

关于linux - Git ls-remote 在 RHEL 中不返回数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25689419/

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