repo init报错Cannot get https://gerrit.googlesource.com/git-repo/clone.bundle

原文地址:https://blog.csdn.net/feiniao8651/article/details/59178128
原文地址:https://blog.csdn.net/xiaokeweng/article/details/46743409

【错误】
leo@leo-weng:~$repo init-uXXXX.xml
fatal: Cannot get https://gerrit.googlesource.com/git-repo/clone.bundle
fatal: error [Errno 101] Network is unreachable

【原因】
当repo init时,执行的repo是环境变量里面默认的repo,这个repo只是单纯一个几百行的python脚本
而不是完整的repo-project,所以要先去网络远端sync完整的repo-project,
因为repo也是开源项目,设计者出于维护和使用体验,每次repo init时候都要从远端sync最新的版本
(浏览器开https://gerrit.googlesource.com/git-repo/clone.bundle可以看到维护的history,当然了,前提是当时网络可以通过GFW)
在repo init成功情况sync的project会在./.repo/repo这个路径,包含repo所有功能逻辑的python脚本,
而正是因为远端的git server的域名gerrit.googlesource.com会被GFW挡掉。
就会出现Network is unreachable,运气不好的时候可能一整天都没办法init成功。

【解决方法】
(1)免翻墙获取repo工具的方式
mkdir ~/bin
cd ~/bin
PATH=~/bin:$PATH
curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o repo
chmod +x repo

(2)update:
上面的方式是将repo添加到环境变量,但是repo运行时,仍然会去google服务器请求最新版本,解决方式是在本地环境变量中指定repo服务器地址

repo的运行过程中会尝试访问官方的git源更新自己,如果想使用tuna的镜像源进行更新,可以将如下内容>复制到你的~/.bashrc里

export REPO_URL=‘https://mirrors.tuna.tsinghua.edu.cn/git/git-repo/
并重启终端模拟器。

(3)最后一步
PATH=~/bin:$PATH

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值