`
yuting_lv
  • 浏览: 109745 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

「git Clone failed」RPC failed;errno 54

    博客分类:
  • git
阅读更多

从github上使用https url clone一个比较大的项目,下载大小600M+ 

遇到错误:

Clone failed
RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54
the remote end hung up unexpectedly early EOF index-pack failed

 记录下解决过程:

参照 https://blog.csdn.net/DJY1992/article/details/50604937

设置 comporession=-1,失败

参照 https://vnzmi.com/2017/01/08/git-early-eof-index-pack-failed/

设置增大内存缓存,失败

参照 https://github.com/lanlin/notes/issues/41

git 在 pull 或者 push 一个大项目时,可能会碰到出现如题所示的错误。
又或许是因为修改了太多的历史提交,一次性需要提交大量信息也可能会导致该情况。

解决办法(分两种)
网络上往往都会说这是由于大文件造成的提交或者拉取失败。
但是,经过本人测试。如果 errno 56,那么应该是有大文件或者提交缓存方面的问题。
而 errno 54 则不是这个问题。对于 56 错误的解决方式与网络上大部分文章的一致。
都是增大缓存配置,比如下面就是配置提交缓存为 500M。
git config http.postBuffer 524288000
git config https.postBuffer 524288000
对于 errno 54 这个错误,经尝试 http 或者 https 协议都无法正常提交。
必须改为 ssh 方式来提交代码。也就是必须使用公私钥的方式进行账号验证,并提交代码。
具体生成公私钥的方法,参见 github 帮助文档
https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/
同时找到 git config 当中的项目 url 配置项,改为 ssh 协议类型的项目地址。
例如:url = git@github.com:xxx/xxx.git

检测你的 git 版本是不是最新的。

你本身是否有这个项目的访问权限。


如果你开启了账户的双重验证、或者你准备 clone 的项目是一个开启了单点登录(SSO)的企业项目,那你必须要生成一个个人的 access token,而不能直接用密码访问。

如果你使用 ssh 来访问,你必须先生成 ssh key 公私钥匙对。

如你的目标项目的企业要求单点登录的,这个时候只能用 https 来访问,不能用 ssh.

 更新mac上安装的git版本到最新

参照: https://help.github.com/cn/github/using-git/which-remote-url-should-i-use

https://help.github.com/cn/github/authenticating-to-github/connecting-to-github-with-ssh

设置 “在 HTTPS 端口使用 SSH”

使用SSH方式clone成功 

 

分享到:
评论

相关推荐

    git clone 最新版

    "git clone"是Git中的一个核心命令,用于复制远程仓库到本地。在本文中,我们将深入探讨`git clone`命令以及如何获取其最新版本。 首先,让我们了解`git clone`的基本用法。当你运行`git clone <repository>`时,它...

    Git Clone大文件工具

    然而,在处理包含大量或大文件的项目时,Git的性能可能会受到影响,甚至可能导致克隆(Clone)操作失败。为了解决这一问题,Git社区开发了一个名为Git LFS(Large File Storage)的扩展工具,专门用来管理大文件。...

    彻底解决Mac端git clone/push速度太慢的问题

    彻底解决Mac端git clone/push速度太慢的问题,详情请参阅文档。

    git代码clone,submodule

    ### Git Clone与Submodule知识点详解 #### 一、Git Clone命令 `git clone` 命令用于克隆一个远程仓库到本地。当你需要获取一个项目的全部文件时,这个命令非常有用。 **基本用法:** ```bash git clone ``` **...

    Git的客户端+服务端Gitblit+Git clone

    "Git clone"是Git中的一个关键命令,用于复制远程仓库到本地。当你想要获取一个已存在的Git仓库副本时,可以使用`git clone`命令。例如,如果要从Gitblit服务端克隆一个仓库,命令格式通常是: ``` git clone ...

    windows git 批量 clone 脚本

    本文将深入探讨如何利用批处理脚本来实现这一目标,主要关注标题提及的"windows git 批量 clone 脚本"。我们将讨论每个文件的作用,并提供相关知识点。 首先,`clone-all.bat`是用于批量克隆Git仓库的脚本。在Git中...

    Github仓库gitclone速度过慢解决方案.docx

    Github仓库gitclone速度过慢解决方案.docx

    gitclone使用操作命令关联git,拉取上传更新操作

    使用命令操作进行关联git,而不是eda软件操作git,操作相关文件,提交更新,拉取代码,包含git分支的操作

    git clone时报错问题解决

    在使用Git进行代码仓库克隆操作时,如果出现“sign_and_send_pubkey: signing failed: agent refused operation”的错误提示,意味着SSH代理拒绝了身份验证的操作。这通常发生在用户尝试通过SSH方式访问Git仓库时,...

    gitclone.com:gitclone.com网站

    它支持Git的基本操作,如`clone`、`pull`、`push`、`commit`和`merge`等,使得开发者能够轻松地跟踪代码变更、管理分支和协同工作。通过GitClone.com,开发者可以创建公开或私有的项目,邀请团队成员,并设置权限,...

    git clone 子模块没下载全的问题解决

    然而,在进行克隆操作时,可能会遇到子模块没有下载完全的情况,下面我们将详细介绍如何解决git clone时子模块没下载完全的问题。 首先,当我们在克隆一个包含子模块的项目时,需要使用递归克隆命令: ``` git ...

    git-fastclone, 关于类固醇,git clone 递归.zip

    git-fastclone, 关于类固醇,git clone 递归 fastclone git fastclone是类固醇的git clone --recursive 。为什么 fastclone?在特定机器上进行大量重复签出?知识库 1st Fastclone 2nd Fastc

    git-clone-init:在git clone上自动设置用户身份(user.email user.name)

    实现`git-clone-init`通常涉及到创建一个自定义的git钩子,如`pre-clone`或`post-clone`(尽管git本身并未提供这样的预定义钩子)。这个钩子脚本可以在克隆完成后运行,根据需要更新`~/.gitconfig`或当前仓库的`.git...

    gitclone shell

    适用于svn迁移git自动化脚本,配置好参数即可

    关于 git clone 下面说法正确的是

    关于 git clone 下面说法正确的是

    git-embed:Build embeddable git for `git clone` and `git pull` on Windows. || 在 Windows 上构建嵌入式的 git 以用于 `git clone` 和 `git pull`

    在Windows上为git clone和git pull构建可嵌入的git。 用法 从下载最新的重新打包的Git。 构建类型 小型的 软件包“ mini”是在Windows上运行git clone和git pull的最小程序集。 它不支持HTTPS。 但你可以取代...

    解决 github项目clone报错 Failed connect to github.com:443; 解决

    系统环境:CentOS Linux release 7.6.1810 (Core) 起因:npm构建时报错 ... fatal: unable to access 'https://github.com/nhn/raphael.git/': Failed connect to github.com:443; Connection timed out npm

Global site tag (gtag.js) - Google Analytics