无法获取 https://gerrit.googlesource.com/git-repo/clone.bundle

16
我尝试按照"source.android.com/source/downloading.html#installing-repo"的指示创建git仓库,但在工作目录中初始化repo时(使用Ubuntu),我遇到以下错误:
:~/workdir$ repo init -u https://android.googlesource.com/a/platform/manifest
fatal: Cannot get https://gerrit.googlesource.com/git-repo/clone.bundle
fatal: error [Errno -2] Name or service not known
我已经创建了~/.netrc文件并设置了HTTP_PROXY和HTTPS_PROXY变量。
当我尝试通过浏览器访问上述clone.bundle链接时,会出现“未找到”的错误。
请告诉我是否需要进行其他设置。谢谢!

有进展吗?我也遇到了同样的问题。 - r4jiv007
8
我曾经遇到过类似的问题,但我能够在浏览器中下载 https://gerrit.googlesource.com/git-repo/clone.bundle,一旦下载完成,我就可以使用此答案中未记录的 repo 参数,方法如下: repo init -u https://android.googlesource.com/a/platform/manifest --repo-url <你下载 clone.bundle 的位置> - Maks
@Maks,你应该把这个变成一个答案(它对我也起作用了)。 - Étienne
6个回答

15

错误

fatal: Cannot get https://gerrit.googlesource.com/git-repo/clone.bundle 
fatal: error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)

您可以修改此存储库文件以解决此问题,请按照以下命令执行

sudo cp /usr/bin/repo /usr/bin/repo_bak
sudo vi /usr/bin/repo

在 'import sys' 后面插入以下细节。
import ssl
ssl._create_default_https_context = ssl._create_unverified_context

然后保存该文件,然后再重试。


4
我是一名MAC用户(Mojave)。我遇到了相同的错误。
当我启动时:
repo init <repository url>

我收到了这个错误:
Downloading Repo source from https://gerrit.googlesource.com/git-repo
fatal: Cannot get https://gerrit.googlesource.com/git-repo/clone.bundle
fatal: error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:852)
fatal: cloning the git-repo repository failed, will remove '.repo/repo'

问题似乎是由于在MacOS上的Python 3.6自带了一个私有的OpenSSL副本。这意味着系统中的信任证书不再作为Python ssl模块的默认值使用。为了解决这个问题,您需要在系统中安装certifi软件包。
我已经解决了这个问题:
open /Applications/Python\ 3.6/Install\ Certificates.command

3

我认为安装openssl和ca-certificates软件包可以解决这个问题。


不,它不会。 - mondjunge

2

提供信息:以下是我的解决方法:

我错误信息的第二行与其他不同:

fatal: Cannot get https://gerrit.googlesource.com/git-repo/clone.bundle
fatal: error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:581)

但是上面问题中的评论对我有用(下载clone.bundle,并使用--repo-url选项)。 然而,在.repo/中的Python代码中出现了错误。 但是我忽略了它,repo sync命令成功了。


你好,我也遇到了和你报告的同样的错误。你能否解释一下你的步骤?我没有看到“--repo-url”选项。非常感谢! - Raulp
3
你需要手动使用浏览器下载clone.bundle文件,例如下载到~/Downloads目录下。然后执行命令'repo init -u .... --repo-url ~/Downloads/clone.bundle'。 - JLa
非常感谢。'repo init -u .... --repo-url ~/Downloads/clone.bundle' 这里的...(点点点)代表什么? - Raulp

1

在安装之前可能需要使用libssl-dev重新构建/重新安装Python


0

1
这是谷歌的一个有缺陷的工具。如果您将包放在您正在工作的目录中,请确保提供绝对路径或相对于您的用户目录即“~” 的路径。看起来该工具错误地将例如'./'解释为URL。 - smaudet

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接