Git常见问题

1.拉取的项目很大,如1G以上,此时报错early EOF

具体报错如下:

Cloning into 'csp-doc'...
remote: Counting objects: 6061, done.
remote: Compressing objects: 100% (4777/4777), 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.设置post请求的缓存区大小,要求缓存区大小大于git项目大小。
该值计算单位为字节(Byte),如1M=1024KB=1024*1024字节
示例:设置500M

git config --global http.postBuffer 524288000

2.设置git的最低网速和最低网速下载时间

git config --global http.lowSpeedLimit 0
git config --global http.lowSpeedTime 999999

3.设置压缩

git config --global core.compression -1

4.查看设置

git config --list

5.先浅层clone(只拉取最新的一次提交),之后再拉取全部

 git clone http://gugugutime/doc.git --depth 1
 git fetch --unshallow

使用ssh协议下载

我最先使用http协议clone项目,但执行以上设置也无效,最后修改为ssh协议。

生成密钥对

语法:

ssh-keygen -t rsa -C "git邮箱"

-t 表示密钥的类型 ,-b表示密钥的长度(ssh-keygen -t rsa -b 4096 -C “你的邮件地址”),-C 用于识别这个密钥的注释 ,这个注释你可以输入任何内容,一般使用邮箱作为密钥的名字。
示例:

ssh-keygen -t rsa -C "[email protected]"

一直回车即可。
会在C盘的用户目录下生成一对公钥、私钥。
Git常见问题_第1张图片
也可以用户自定义密钥存储路径,密钥生成密码:
Git常见问题_第2张图片

为git账户添加公钥

复制公钥的内容:

clip < ~/.ssh/id_rsa.pub

登录你的git账号,进入git仓库,一般是点击用户图标,然后在个人页面点击菜单栏的 SSH key 进入页面,点击添加 SSH key,将公钥粘贴即可。
注意 SSH key 代码的前后不要留有空格或者回车。
上面的 Title 所对应的输入框是该 SSH key 显示在 git仓库上的一个别名。
默认的可以使用你的邮件名称。

ssh协议克隆项目

 git clone git://gugugutime.com/doc.git

你可能感兴趣的:(#,Git使用,git,github)