GitHub是什么?GitHub进不去?-GitHub怎么搜索下载使用教程

GitHub是干什么的

GitHub是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub。

关于这个logo或许可能也许大概你会当他是一只猫

但他实际上是一只戴着猫耳的章鱼

 GitHub 于 2008 年 4 月 10 日正式上线,除了 Git 代码仓库托管及基本的 Web 管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。目前,其注册用户已经超过350万,托管版本数量也是非常之多,其中不乏知名开源项目 Ruby on Rails、jQuery、python 等。

GitHub官网

GitHub的官网地址为:http://github.com/,点击链接即可自动跳转,全英文网站。

GitHub进不去

造成GitHub进不去的可能性有很多,这里我们列举几个比较常见的原因,其余的少见或者个例的可能性大家可以去某乎找到答案。

1、DNS问题

我们在浏览器输入 GitHub 的网址时,会向 DNS 服务器发送一个请求,获取到 GitHub 网站所在的服务器 IP 地址,从而进行访问。

就像你是一名快递员,在送快递前要先找中间人询问收件人的地址。而 DNS 就是这个告诉你目标地址的中间人,如果 DNS 告诉了你错误的地址、或者请求被拦截、再或者 DNS 挂了,都会导致你无法访问网站。

这个时候我们就会考虑有没有能避开DNS,但是也能获取到网址对应的 IP 的方式?

有的。

答案就是修改 hosts 文件。当用户在浏览器中输入网址时,系统会首先自动从 hosts 文件中寻找对应的 IP 地址,一旦找到,系统会立即打开对应网页,如果没有找到,系统才会再将网址提交 DNS 域名解析服务器进行 IP 地址的解析。

因此,想要访问 GitHub,我们可以先通过 IP 查询工具 来获取当前 GitHub 网站的真实地址,再修改本地 hosts 文件,将该地址和 GitHub 网址关联。

先找到 hosts 文件的位置,不同操作系统,hosts 文件的存储位置也不同:

  • Windows 系统:C:WindowsSystem32driversetchosts
  • Linux 系统:/etc/hosts
  • Mac(苹果电脑)系统:/etc/hosts
  • Android(安卓)系统:/system/etc/hosts
  • iPhone(iOS)系统:/etc/hosts

打开 hosts 文件,添加一行,将 xx 替换为你查询到的解析地址即可:

xx.xx.xx.xx www.github.com

但这种方式比较麻烦,而且查询出来的 IP 也未必支持国内的访问。

所以这里我们再提供一个修改host的方式。

无需安装任何程序,通过修改本地 hosts 文件,试图解决:

  • GitHub 访问速度慢的问题
  • GitHub 项目中的图片显示不出的问题

由于这个方法字数以及代码属实比较繁复,且是每日更新的,再加上该方法是来自于国内圈内大佬的维护,是大佬自个儿掏的钱,所以我们此处附上原地址链接,大家如果用了方法有效可以支持下大佬:https://github.com/521xueweihan/GitHub520

2、时局问题

这里我总结为时局二字,只可意会不可言传,如果你在网络冲浪,尤其是访问外网的时候,突然发现最近网络不太好或者说不太对劲,那多半你就得去查查日历了,看看最近有没有什么新闻,再或者去百度搜索一下“历史上的今天”,应该能获得答案。

3、被墙问题

所谓翻墙简单地说就是翻越我们国家与其他国家之间的一堵墙,众所周知,在我们国内是无法自由访问YouTubeInstagramTwitter等网站的,都需要借助到梯子翻墙出去。

GitHub为什么被墙? GitHub被墙其实就是跟第二点问题脱不了干系,这个我们不便多说。

GitHub本身并非是一个必须要翻墙才可以访问的网站,但你不得不承认使用翻墙有时候会减少很多麻烦,比如说第二条受某些新闻的影响,一旦你使用加速器ip更改为国外,那么国内的新闻自然影响不到你的访问了。

GitHub 和 Gitee 的区别

Gitee.com(码云) 是 http://OSCHINA.NET 推出的代码托管平台,支持 Git 和 SVN,提供免费的私有仓库托管。目前已有超过 600 万的开发者选择 Gitee

如果你一定要弄懂这两者的关系,那么你首先必须要知道什么是Git,Git官网:https://git-scm.com/通过git可以将代码上传到giteegithub。而Github与Gitee是同一类,在云端。二者的使用都需要借助到Git。

就像前面所说的,GitHub的定义一样,“GitHub 是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub。”,Gitee 也一样,它提供免费的 Git 仓库

简单总结一下两者的区别大概是如下几个方面:

GitHub :全英文网站、用户基数多、知名库多、在国内访问时会有不稳定现象

Gitee :中文网站、用户几乎都为国人、优秀的库较少、在国内访问不会出现不稳定现象

如果是做开源的话,建议是托管在 GitHub 上,然后同步托管在 Gitee 上做国内镜向。如果只是普通托管代码的话,Gitee 就行,毕竟速度快。

GitHub怎么用

GitHub怎么搜索自己想要的

如果你有意要在其中找到一些你感兴趣的项目,或者是有特定关键词必须要找到的项目,那么该如何下手操作?

首先你得知道一个开源项目具体由哪些部分组成:

  • name: 项目名
  • description: 项目的简要描述
  • 项目的源码
  • README.md: 项目的详细情况的介绍

除了这些要素之外,项目本身的star数和fork数(数量越高代表项目越火热)、这个项目的最近更新日期都是我们可以参考的标准。

有了这些,想要进行精准搜索就变得非常容易了。

in:name xxx // 按照项目名搜索
in:readme xxx // 按照README搜索
in:description xxx // 按照description搜索

我们甚至还能把条件定的更复杂:

stars:>xxx // stars数大于xxx
forks:>xxx // forks数大于xxx
language:xxx // 编程语言是xxx
pushed:>YYYY-MM-DD // 最后更新时间大于YYYY-MM-DD

比如说:

想要搜索含有“Spring boot”关键词的项目
in: name spring boot

结果发现有9万多个

进一步精确,缩小范围,例如从项目火热程度入手
in: name spring boot stars:>3000
这时只剩8个项目了

作者:豆腐君

大家好!很高兴能够向大家介绍自己。我是一名互联网编程技术爱好者,曾在国外留学并在欧洲定居。我从留学生涯中受益匪浅,毕业后我并没有满足于现状,而是选择了在博客上分享我的所学所感,以此来锻炼自己并不断提升技术水平。我心系技术,但却不愿意甘于平庸,因此我希望通过博客将自己的知识整理并分享出去,以此来帮助他人。

我对多个领域都怀有浓厚兴趣,同时也喜欢结交新朋友。如果你有兴趣,欢迎与我取得联系!

类似文章

发表回复