git 项目过大问题解决

当项目过大时,git clone时会出现error: RPC failed; HTTP curl The requested URL returned error: Gateway Time-out的问题
解决方法很简单,在git clone时加上--depth=1即可解决
克隆的项目只包含最近的一次commit的一个分支,体积很小,即可解决文章开头提到的项目过大导致Timeout的问题,但会产生另外一个问题,他只会把默认分支clone下来,其他远程分支并不在本地,所以这种情况下,需要用如下方法拉取其他分支:
$ git clone --depth=1  https://github.com/dogescript/xxxxxxx.git
$ git remote set-branches origin 'remote_branch_name'
$ git fetch --depth=1  origin remote_branch_name
$ git checkout remote_branch_name

解决

第一步:克隆深度设置为1

git clone 仓库地址 --depth 1
cd 项目根目录

第二部:拉去当前完整分支

git fetch --unshallow  
//这一步完成相当于“git clone -b 分支 仓库地址”,但项目实在太大,克隆一个分支也是失败,个人洁癖,又喜欢把所有分支克隆到本地,如有需要继续下一步,否则这一步完成可以正常开发的。

第三步:跟踪所有其他远程分支

git remote set-branches origin '*'

第四步:拉去所有远程分支

git fetch -v

参考地址:https://www.jianshu.com/p/cf6933e8f218
                  https://www.jianshu.com/p/4b669dee03a7

你可能感兴趣的:(git)