Github 你對它真的很瞭解麼?

提及編程和程序員,就不得不提 GitHub。一個被戲稱爲全球最大的同性交友網站,是程序員最喜歡的平臺,沒有之一。程序員

Github 能作些什麼(解決什麼問題)

不少人最初接觸 GitHub 會覺得這是個 Git 倉庫的網頁版,實際上 GitHub 和 Git 徹底是兩碼事。編程

  • Git 完成代碼託管,相似 CSV 或 SVN 的代碼版本管理工具;
  • issue 用來進行 Bug 跟蹤和管理;
  • Pull Request(pr) 實現了協做開發、Code Review 和交流功能,幫助開發者或開發團隊實現高效率高品質的代碼編寫;
  • Wiki 和 擴展的 Markdown 格式 GFM 能夠編寫優雅的開發文檔;
  • 一些企業或我的在基於 GitHub 研發和管理本身的產品和服務(可能涉及付費);

Logo

吉祥物 Octocat,是一個章魚(octopus)和貓咪(cat)組合而成。後端

  • 章魚,又名八爪魚,是否暗示程序員要多作事,即時沒有不少手,也要完成有不少手的工做;
  • 貓咪,身手敏捷,有九條命,是否暗示程序員要敏捷開發,作一個打不死的,與產品、後端和設計周旋;

貢獻度

目前,全球絕大部分開源項目都託管在 GitHub 上,包括 Linux、VS Code、OpenStack、Docker、React、Vue、OpenResty、TensorFlow 等重量級項目。來看一組數據網絡

  • GitHub 在 2018 年 10 月份發佈的年度報告:開發者已經超過 3100 萬,其中 2018 年增長了 800 萬新用戶,比以往 6 年增長的總數還要多;
  • GitHub 上目前有 210 萬個組織,管理的代碼倉庫超過 9600 萬個,這兩個數據都比 2017 年增長了 40%;
  • 過去的一年裏,GitHub 上的開發者共提交了 11 億次有效貢獻;
  • 中國用戶數和代碼貢獻量從 2015 年超過英國以後,一直維持在第二名的位置,僅次於美國;

這些數據展現了技術的生命力和開發者旺盛的創新精神。不客氣的說,其餘代碼託管平臺都綁一塊兒,也抵不過 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。

...未完待續

相關文章
相關標籤/搜索