git ssh permission denied解决办法
1. SSH配置
参考链接 SSH配置文档
2. ssh报错(permission denied)
解决方式: 找到git安装目录 进入etc/ssh文件夹内,找到ssh_config文件,在# Added by git-extra后面添加t替换代码具体参考下面图片
Host *
IdentityFile ~/.ssh/id_rsa
HostkeyAlgorithms +ssh-rsa
PubkeyAcceptedAlgorithms +ssh-rsa
3. https问题
具体参考文章https拉取网络错误解决方法
关于git拉取项目时,报RPC failed; curl 18 transfer closed with outstanding read data remaining错,因为拉取时间过长才报的错,所以猜测是内存或者项目过大导致的无法拉取,解决方案有三种,增大缓存区、浅克隆、换协议:具体解决方案如下:
- 加大缓存区 git config --global http.postBuffer 524288000 这个大约是500M
- 少clone一些,–depth 1 git clone https://github.com/flutter/flutter.git --depth 1 –depth 1的含义是复制深度为1,就是每个文件只取最近一次提交,不是整个历史版本。
- 换协议 clone http方式换成SSH的方式,即 https:// 改为 git:// 例如git clone https://github.com/test/test.git 换成git clone git://github.com/test/test.git
其他的解决方式:
- 文件太大,解决方式为git添加 compression 配置项
git config --global core.compression -1
compression 是压缩的意思,从 clone 的终端输出就知道,服务器会压缩目标文件,然后传输到客户端,客户端再解压。取值为 [-1, 9],-1 以 zlib 为默认压缩库,0 表示不进行压缩,1…9 是压缩速度与最终获得文件大小的不同程度的权衡,数字越大,压缩越慢,当然得到的文件会越小 - 可以增加git的缓存大小
git config --global http.postBuffer 1048576000 (1G) 1 3、配置git的最低速和最低速时间
git config --global http.lowSpeedLimit 0 git config --global http.lowSpeedTime 999999 单位 秒 1 2 global配置对当前用户生效,如果需要对所有用户生效,则用–system