解决github下载速度慢问题

  众所周知,GitHub是一个巨大的开源宝库,以及程序员和编程爱好者的聚集地,包括我之前推荐的诸多优秀的开源项目全部都是位于GitHub上。但是每当我们看到优秀的开源项目,准备去 下(bai)载(piao) 时,会发现 git clone 的速度异常之慢!这简直太难受了。小项目倒还好,即便是下载,也需要等几分钟;一旦项目庞大起来,或者项目文件数目一多, git clone 大概率会失败!当然网上常见的诸如修改hosts(加速国内Github访问速度)、代理等方式实际使用效果并不一定好,而且也不稳定。如果不会FQ,那么想要流畅的使用github是非常困难的。因此我总结了三种方法,供大家选择

一、github加速网站

  这种方法是最方便的,极少数情况下会慢,但是一定比自己下载快。说实话我还挺不愿意分享,因为是小网站,知道的人多了,就要负载了。

网站一:https://toolwa.com/github/

使用方法

  1. 打开你要下载的 GitHub 仓库页面
  2. 点击右侧的绿色按钮 "Code" > "Download ZIP"
  3. 等浏览器弹出下载框后复制下载框中的链接地址并粘贴到以上输入框
  4. 点击加速下载

二、码云

  这种方法是通过国内代码托管平台——码云作为中介,来完成github上项目的下载速度。

  1. 首先确保码云上有账户,可以正常使用,没有的可以自行注册一下;
  2. 点击右上角新建仓库的加号  +  ,选择“ 从 GitHub/GitLab导入仓库 ”菜单;
  3. 然后填写位于github上你想 clone的仓库地址 并导入;(这一步交给码云来做速度是非常快的,一会儿功夫,码云就克隆出了一份和GitHub上一模一样的项目!)
  4. 接下来我们通过码云上的项目地址,将项目clone到本地,这时候的clone速度就很快了,几MB/s的速度是没问题的,很快项目就下载下来了;

按道理讲这时候我们的目的已经达到了,不过不要忘了,这时候克隆到本地的项目关联的是 码云Gitee的地址,已经和原来的 GitHub项目 完全脱离了,是另外一个副本。你通过 git 操作,提交的仓库不是 github,而是 码云,在必要情况下(比如我们就是要给GitHub上的某个项目提 PR),我们还需要重新将我们本地的项目关联到原来的GitHub项目上去,因此,我们需要重新修改远端地址。做法如下:

  1. 首先找到位于本地仓库目录下的隐藏文件夹 .git
  2. 用文本编辑器打开 .git文件夹中的 config配置文件;
  3. 将配置文件中的 [remote "origin"].url 字段重新关联到原来位于GitHub上的GitHub项目地址

至此大功告成,本地项目就相当于是 clone自GitHub,后续提代码,提 PR到GitHub上都没有问题。

三、通过Github 桌面版

1、首先下载安装Github Desktop官方原版:https://desktop.github.com/

 

然后选择file-->clone repository-->在URL中输入github的项目地址,点击clone即可下载。

通过github Desktop下载项目比较稳定,速度更git clone相比更快。

汉化

  官方一直没提供英文,但是网上又开源了汉化版,下载地址:Github Desktop汉化版,下载最新版就好。

下载下来是一个压缩包,解压后将【main.js】和【renderer.js】替换至:下面文件夹内,重新打开GitHub Desketop ————完成

现在这个汉化项目做的完善了,直接出了一个软件,双击 OnekeyUIApp.exe

点击汉化,即可。

 

四、FQ

  最后一种方法,那就是FQ,打开全局模式,不管是浏览github网站,还是下载,那么速度都是杠杠的,但是这种方法嘛,由于国情的原因,就不推荐。😛

码云和github同步提交

因为github git push的时候和网也有很大的关系,大多数人会选择国内码云 做一份备份,因此我这里讲解一下将开源项目同时推送到github和码云。

前提:你的代码已经在github仓库和码云仓库

  • github:https://github.com/LXP-Never/blog_data
  • 码云:https://gitee.com/LXP-Never/blog_data

手动方式修改配置git文件

1、克隆Github项目代码大本地

git clone https://github.com/LXP-Never/blog_data.git

2、进入项目目录修改git 的配置文件config,配置后的config文件内容

$ cat config
[core]
        repositoryformatversion = 0
        filemode = false
        bare = false
        logallrefupdates = true
        symlinks = false
        ignorecase = true
        hideDotFiles = dotGitOnly
[remote "origin"]
        url = https://github.com/LXP-Never/blog_data.git
        fetch = +refs/heads/*:refs/remotes/origin/*
[remote "second"]
        url = https://gitee.com/LXP-Never/blog_data.git
        fetch = +refs/heads/*:refs/remotes/second/*

以上红色配置内容为新添加的内容

3、查看所有分支

可以看出多出来一个second远程master分支

4、开始推送代码

这里修改一下README.md文件,添加内容:“码云提交代码”,然后查看状态,直接提交到码云主master分支

  • git push origin master  会推送到 Github
  • git push second master 会推送到码云
  • 注意:second origin都是名字,你自己可以随便取。

注意:以上步骤必须的先添加到本地仓库同时添加说明,以上两在这里

再次回到码云查看是否提交成功,

第二种同步方式

是码云提供的,强制同步

参考

【推荐阅读】GitHub 下载加速(这篇文章提供了很多方法,虽然我没去看,感兴趣的可以去了解)

【视频】学会Git玩转Github【全】

【文章】Github利用码云进行加速下载

【文章】git如何同时同步提交到码云和GitHub上

 

posted @ 2021-01-08 22:56  凌逆战  阅读(8429)  评论(0编辑  收藏  举报