使用Git包从github上同步代码,处理报错

在尝试使用Git从GitHub同步代码时遇到了RPC失败、找不到aarch64-none-elf-gcc、cc命令未找到、libz.so.1库加载错误等系列问题。通过参考相关教程并下载安装特定版本的GCC工具链,最终成功编译并通过了所有步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考1:https://docs.khadas.com/zh-cn/vim3/InstallToolchains.html

参考2:https://wiki.odroid.com/odroid-c4/software/building_u-boot

gcc-arm-none-eabi-6-2017-q2-update-linux.tar.bz2
gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.bz2

1、RPC failed; curl 18 transfer closed with outstanding read data remaining

#
# git clone操作,https方式,同步到一大半时报错,同步文件太大或网络不好
#
$ git clone https://github.com/hardkernel/u-boot.git -b odroidg12-v2015.01
Cloning into 'u-boot'...
remote: Enumerating objects: 236, done.
remote: Counting objects: 100% (236/236), done.
remote: Compressing objects: 100% (182/182), done.
error: RPC failed; curl 18 transfer closed with outstanding read data remaining
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

#
# 尝试1:预计下载的git包超过300M,所以增大缓冲区试试
#
$ git config --global http.postBuffer 524288000
$ git config --list
user.email=xxx@hotmail.com
user.name=xxx
color.ui=auto
http.postbuffer=524288000
#
# 尝试2:--depth 1 浅复制,只同步最新的代码,不管历史版本,下载量会小很多。
#
$ git clone https://github.com/hardkernel/u-boot.git -b odroidg12-v2015.01 --depth 1
#
# 尝试3:优先还是https源,不行再切到git源。
#
$ git clone git://github.com/hardke
### 解决 GitHub Clone 时 SChannel 错误的方法 当遇到 `schannel` 相关错误时,通常是因为 Windows 系统默认使用内置的安全通道(Secure Channel)库来进行 SSL/TLS 加密通信。这种情况下可以尝试以下方法解决问题。 #### 方法一:切换到 OpenSSH 或者 OpenSSL 可以通过设置 Git 使用 OpenSSL 而不是系统的 Secure Channel 库来解决此问题。运行以下命令: ```bash git config --global http.sslBackend openssl ``` 这会强制 Git 使用 OpenSSL 来处理 HTTPS 请求[^1]。 #### 方法二:调整 HTTP 版本 有时由于网络环境的原因,HTTP/2 协议可能会引发一些兼容性问题。此时可以将 HTTP 版本降级为 HTTP/1.1。通过执行以下命令完成配置: ```bash git config --global http.version HTTP/1.1 ``` 这样可以让 Git 在与远程仓库交互时采用更稳定的协议版本[^3]。 #### 方法三:更改 DNS 设置 如果问题是由于域名解析引起的延迟或失败,则可以手动指定 IP 地址映射。编辑本地主机文件 (`C:\Windows\System32\drivers\etc\hosts`) 并加入如下条目: ``` 151.101.72.249 global-ssl.fastly.net 192.30.253.112 github.com ``` 上述操作有助于绕过可能存在的 DNS 缓解服务中的异常情况。 #### 方法四:更换克隆方式 考虑改用 SSH 方式代替 HTTPS 进行代码同步。具体做法是先生成并上传自己的公钥至 GitHub 帐号下,再利用下面形式的 URL 完成项目复制工作: ```bash git clone ssh://git@ssh.github.com:443/YOUR_USERNAME/YOUR_REPOSITORY.git ``` 这种方式能够有效规避部分因证书验证而导致的问题[^4]。 #### 方法五:增大缓冲区大小 对于某些特定的大规模存储库来说,增加传输数据的最大尺寸也可能有所帮助。可试用下列指令提升性能表现: ```bash git config --global http.postBuffer 524288000 ``` 这里我们将最大 POST 数据量设为了 500MB 左右[^5]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值