You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter引擎开发环境搭建:gclient sync执行失败求助

解决Flutter引擎搭建时gclient sync的Git克隆权限错误

我之前搭建Flutter引擎环境时也碰到过几乎一模一样的问题,这个报错核心是SSH权限验证失败,导致无法拉取指定的远程仓库,咱们一步步来排查解决:

1. 先确认仓库地址是否正确

从报错信息看,gclient正在尝试克隆git@github.com:tolotrasamuel/engine.git,但官方Flutter引擎的仓库是flutter/engine.git。你可以先检查:

  • 是不是在配置gclient的时候填错了仓库地址?
  • 这个tolotrasamuel/engine.git仓库是否真的存在,且你拥有该仓库的访问权限?

如果是跟着官方文档走的,大概率是.gclient配置文件里的仓库源写错了,你可以打开C:\Flutter\engine下的.gclient文件,查看solutions里的url字段是否为官方仓库地址。

2. 修复SSH权限验证问题(如果仓库地址正确且你有权限)

如果仓库确实存在且你有权限访问,那问题出在本地SSH密钥没有和GitHub账号关联:

  • 生成本地SSH密钥(如果还没生成):
    ssh-keygen -t ed25519 -C "你的GitHub绑定邮箱"
    
    执行时一路按回车使用默认配置即可。
  • 将生成的公钥添加到GitHub账号:找到本地生成的id_ed25519.pub文件(一般在C:\Users\你的用户名\.ssh目录下),复制里面的全部内容,然后添加到GitHub账号设置中的SSH密钥管理页面。
  • 测试SSH连接:执行以下命令验证权限是否正常:
    ssh -T git@github.com
    
    如果输出类似Hi 你的GitHub用户名! You've successfully authenticated, but GitHub does not provide shell access.,说明SSH权限配置没问题了。

3. 临时改用HTTPS地址绕过SSH问题

如果SSH配置暂时搞不定,可以修改.gclient文件中的仓库地址为HTTPS格式,比如:

solutions = [
  {
    "name": "src/flutter",
    "url": "https://github.com/flutter/engine.git",
    # 其他配置保持不变
  },
]

之后重新执行gclient sync,会提示你输入GitHub账号密码或者个人访问令牌(推荐用令牌,GitHub现在已经不再支持密码验证)。

完成以上步骤后,重新运行gclient sync应该就能顺利克隆仓库了。

内容的提问来源于stack exchange,提问作者TSR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.09 09:38:11