2022
我们一起努力

github是什么的简单介绍

本文目录:

  • 1、github 和 sourceforge有什么区别
  • 2、ubc2github是什么
  • 3、漫话:如何给女朋友解释什么是Git和GitHub

github 和 sourceforge有什么区别

0. github出身好

github 是基于git的,这是最优秀的版本控制软件!没有之一!

1. github更有利于开源项目的发展

sf并没有充分体现这一点,它更像一个开源软件下载站

在github上使用开源项目的流程是:

a. 下载,可以直接下载或者git clone下来,可以下载当前版本也可以下载某个分支,或者某个tag,甚至是某个commit

b. 使用(这个跟sf差不多了)

c. 修改,直接fork一个就可以改了,改完可以给作者发个pull request,这样才能让开源项目不断的完善起来

github 让这一切都变得简单,直接;不像很久以前的开源界,想要贡献点代码,你还得先进mail list,先帮着解答,时机成熟了再让你改点bug

2. github更方便沟通

任何人可以给项目创建issue, 写上特性需求或者报告bug,作者或项目成员会很快做出回应

在 sf上,作者和项目成员都不知道在哪,只有在版本发布的时候会在上面更新一下

3. github引入了社交元素

github 上的用户是可以follow别人的,也可以watch某个项目

这很重要,可以每天都多了解一点点,每天多进步一点点

唯一不足的地方就是没有像twitter那样,有人follow会发一封email通知下,让你看看是不是要回fo

4. github更开放

github提供众多的api,可以跟多数管理服务整合

网站上有大量的帮助文档,从 git的入门到github的使用都有,非常详细、图文并茂

官方博客经常发布一些技术文章,内容涉及故障处理过程,性能优化,各种技术解决方案的选择思路

此外,可以为项目创建静态网站,并且没有任何的限制,无广告

这个功能被很多人用于托管博客,我的博客就是建在这上面,免费

5. github还在快速发展

从最初github发展时只具备基本的源代码托管功能,到速度的提升(迁至rackspace使国内用户访问飞快),到gist的推出,到wiki的版本化,到pull request的出现。。。不知不觉中,github就像一个朋友,直到最近几天,有时候经常联系不上她了。。。我会出离地愤怒!愤怒!!愤怒!!!愤怒完该干嘛干嘛,最后洗洗睡了(我们能怎么样呢,可千万别把github给。。。)

因为还有一大群不明真相的群众扎根在sf,还不知道github或者还不了解 github有多优秀

他们会觉得sourceforge已经非常好了,足够使用,直到有一天,他们真正被github的魅力所吸引

所以,我们在很长的一段时间内都会看到,知名项目一个接一个地慢慢往github上移

ubc2github是什么

GitHub是一个面向开源及私有软件项目的托管平台

因为只支持Git作为唯一的版本库格式进行托管,故名GitHub。

漫话:如何给女朋友解释什么是Git和GitHub

来自:漫话编程

周末,我正在家里看《最强大脑》,女朋友在一旁刷手机,相安无事。谁知道,刚过了没多久,她突然问我:

版本控制

想要介绍什么是GitHub,就要介绍下什么是Git,想要介绍什么是Git,那就不得不提版本控制。

我们知道,如果多台计算机在同一个局域网中,是可以进行局域网文件共享的。共享者可以通过设置把自己文件共享给他人进行阅读和修改。

对于同一份共享文件,如果又多个人需要修改的话会发生什么事情呢?假设现在有三个人,A分享了文件夹mhcoding,其中包含了三个文件mhcoding1.png,mhcoding2.png,mhcoding3.png,B和C需要对这份文件进行修改。

B和C分别把mhcoding文件夹拷贝到自己的电脑上,然后进行修改,改完之后需要再把自己修改上传上去。B先改完了之后把自己的文件上传上去,覆盖了A的分享。之后C也改完了,也把自己的改动上传上去。这样,C就会把B的修改覆盖掉。

为了上述这种问题,就需要通过一种方式来在C想要上传文件的时候来提醒他,告诉他需要考虑到B已经改过文件的事情。

比较好的方式就是通过版本控制。

如果使用了版本控制系统,每一个团队成员都可以在任何时间对任何文件毫无顾虑的进行修改,版本控制系统可以提醒我们文件修改冲突,甚至可以帮我们自动把多个人的改动合并到一起。

有了版本控制,我们还可以回溯查看以前某一个版本中具体文件的内容,还可以查看某一次改动的变更内容。非常适合团队协作。

版本控制的方式

本地版本控制系统

许多人习惯用复制整个项目目录的方式来保存不同的版本,或许还会改名加上备份时间以示区别。这么做唯一的好处就是简单。不过坏处也不少:有时候会混淆所在的工作目录,一旦弄错文件丢了数据就没法撤销恢复。

为了解决这个问题,人们很久以前就开发了许多种本地版本控制系统,大多都是采用某种简单的数据库来记录文件的历次更新差异。

集中化的版本控制系统

接下来人们又遇到一个问题,如何让在不同系统上的开发者协同工作?于是,集中化的版本控制系统应运而生。

这类系统,都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。

这种做法带来了许多好处,特别是相较于老式的本地版本来说。现在,每个人都可以在一定程度上看到项目中的其他人正在做些什么。而管理员也可以轻松掌控每个开发者的权限,并且管理起来也轻松容易的多。

分布式版本控制系统

集中化最显而易见的缺点是中央服务器的单点问题。如果中央服务器宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。

要是中央服务器的磁盘发生故障,碰巧没做备份,或者备份不够及时,就会有丢失数据的风险。

于是分布式版本控制系统面世了。在这类系统中,客户端并不只提取最新版本的文件快照,而是把代码仓库完整地镜像下来。这么一来,任何一处协同工作用的服务器发生故障,事后都可以用任何一个镜像出来的本地仓库恢复。因为每一次的提取操作,实际上都是一次对代码仓库的完整备份。

Git

git其实就是一款我们前面介绍的分布式版本控制软件,Git具有以下特点:

程序员是比较典型的需要团队协作的职业,大多数情况下,都是需要多个程序员同时开发同一个项目的,就好像多个程序员要同时修改一份word文档一样。所以,Git是很多程序员的必备工具。

GitHub

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

所谓托管平台,也就是说他可以用于存放文件。只不过上面的文件都是可以公开被访问到的。

GitHub是通过Git进行版本控制的软件源代码托管服务,并且,GitHub还引入了一些社交属性。号称是世界上最大的程序员(同性)交友网站。

GitHub上那些奇葩”项目”

Dress – 女装大佬聚集地

有129名贡献者在这个名为Dress的项目里集结,上传了数千张女装照,收获了8000余颗星。

你敢相信这是个码农?

地址:

Thanos – 灭霸命令

Thanos.sh是一个开源的个灭霸命令,可随机删除电脑上一半文件。

地址:

nocode – 一行代码都没有

这是一个Issue比项目更精彩的项目,项目中一行代码都没有,Issue中各种装逼。

想问下,Star这个项目的2.7万人是有多无聊???

programmer-job-blacklist 码农找工作黑名单

hangzhou_house_knowledge 杭州买房攻略

howmanypeoplearearound 通过 Wi-Fi 信号估计附近有多少人

【github是什么】的内容来源于互联网,如引用不当,请联系我们修改。

赞(0)
文章名称:《github是什么的简单介绍》
文章链接:https://www.fzvps.com/39117.html
本站文章来源于互联网,如有侵权,请联系管理删除,本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
图片版权归属各自创作者所有,图片水印出于防止被无耻之徒盗取劳动成果的目的。

评论 抢沙发

评论前必须登录!