提及编程和程序员,就不得不提 GitHub。一个被戏称为全球最大的同性交友网站,是程序员最喜欢的平台,没有之一。程序员
不少人最初接触 GitHub 会觉得这是个 Git 仓库的网页版,实际上 GitHub 和 Git 彻底是两码事。编程
吉祥物 Octocat,是一个章鱼(octopus)和猫咪(cat)组合而成。后端
![]() |
![]() |
目前,全球绝大部分开源项目都托管在 GitHub 上,包括 Linux、VS Code、OpenStack、Docker、React、Vue、OpenResty、TensorFlow 等重量级项目。来看一组数据网络
这些数据展现了技术的生命力和开发者旺盛的创新精神。不客气的说,其余代码托管平台都绑一块儿,也抵不过 GitHub 一个。还有就是随着国内开源的项目愈来愈多,质量愈来愈高,使用 GitHub 的中国组织和我的用户正在不断增加。工具
2018 年 6 月 GitHub 被微软 以 75 亿美圆03收购后(也是 Github 成立的第 10 个年头),依旧保持了开发者自由、开放和创新至上的原则、独立运营的立场以及社会化编程的特性。网站
GitHub 的出现,让现代软件开发发生了翻天覆地的变化,真正实现了社会化编程。全世界程序员或技术团队在自由、开源、民主的环境下,经过网络和协做的方式共同开发和维护一个软件产品。设计
真正有生命力的开源软件都是基于社会化编程的方式构建出来的。另外,如今愈来愈多的大公司把本身的一些代码放到 GitHub 上,也许是真的为了拥抱开源,也许只是由于 KPI,但不论如何,GitHub 都是他们的第一选择。code
问:那 GitHub 是如何实现这种社会化编程的模式呢?cdn
若是你只是将 GiuHub 当 Git 用,建个仓库扔些代码就觉得是开源了,没用过 pull request 与别人协做过,也没有 merge 过别人的代码,那你就不是个真正的 GitHub 程序员。blog
pull Request(pr) 采用了一种精巧的设计,让开发者实现了真正的代码对话:Talk is cheap, show me the code(一言不合贴代码)。
说了这么多,那什么是 pull Request 呢?举例来讲,好比你写了一段功能代码,想找小明作 review,你保留的是本来(仓库),小明克隆副本到本身的项目中(fork)进行修改,修改好了经过 commit 提交到本地仓库,最后把提交给你,这就是一次 pull request。此刻,你根据副本内容修改本来,这叫 merge。
...未完待续