帶你了解一下神奇的Github
前言
有沒(méi)有發(fā)現(xiàn),github這個(gè)詞越來(lái)越多出現(xiàn)在你的生活和工作中。程序員在討論github,因?yàn)閾?jù)說(shuō)好的程序員都在用github。做機(jī)器學(xué)習(xí)的在討論github,因?yàn)榇蠹叶及殉绦蚍旁趃ithub上分享。寫(xiě)Python和機(jī)器學(xué)習(xí)教程的也在討論github,因?yàn)樗麄円褍?nèi)容放在github上。想做個(gè)人主頁(yè)的人在討論github,因?yàn)樗麄兿胫涝趺窗炎约旱闹黜?yè)變得更加炫酷。那么是時(shí)候開(kāi)始了解github了。
什么是Github
當(dāng)我還在讀研究生的時(shí)候,聽(tīng)說(shuō)Github是一個(gè)代碼版本管理器,可以方便管理你的各個(gè)時(shí)間段寫(xiě)的版本,不至于在更新一些代碼后丟失以前寫(xiě)的內(nèi)容。事實(shí)上GitHub 是一個(gè)面向開(kāi)源及私有軟件項(xiàng)目的托管平臺(tái),因?yàn)橹恢С?Git 作為唯一的版本庫(kù)格式進(jìn)行托管,故名 GitHub。
簡(jiǎn)單來(lái)說(shuō)Github就是一個(gè)代碼倉(cāng)庫(kù),讓用戶方便存放代碼。但是人家提供的功能當(dāng)然不止于此。除了 Git 代碼倉(cāng)庫(kù)托管及基本的 Web 管理界面以外,還提供了訂閱、討論組、文本渲染、在線文件編輯器、協(xié)作圖譜(報(bào)表)、代碼片段分享(Gist)等功能。目前,其托管版本數(shù)量非常之多,而且其中不乏知名開(kāi)源項(xiàng)目,例如 Ruby on Rails、jQuery、python 等。
Github創(chuàng)始人Chris Wanstrath
截止到2015年,GitHub已經(jīng)有超過(guò)兩千八百萬(wàn)注冊(cè)用戶和5700萬(wàn)代碼庫(kù)。事實(shí)上已經(jīng)成為了世界上最大的代碼存放網(wǎng)站和開(kāi)源社區(qū)。在2018年,微軟以價(jià)值約75億美元的股票收購(gòu)了GitHub。其創(chuàng)始人Chris Wanstrath完成了人生逆襲。由于github良好的口碑和優(yōu)秀的功能,已經(jīng)成為了程序員和科研人員的圣地。
github可以用來(lái)做什么
代碼托管
就是我們做的最多的,上傳代碼,云端備份,可以想象成一個(gè)云盤(pán)。在這個(gè)云盤(pán)上我們可以找到很多大牛分享的代碼。
項(xiàng)目管理
GitHub最初是為了開(kāi)發(fā)的管理而生,當(dāng)然也就具備了項(xiàng)目管理的潛質(zhì),特別是與開(kāi)發(fā)密切聯(lián)系的項(xiàng)目中,它的優(yōu)勢(shì)盡顯。
GitHub 上開(kāi)源的著名項(xiàng)目非常之多,選擇在 GitHub 上開(kāi)源的世界頂級(jí)公司也很多。
建立個(gè)人主頁(yè)
github上的github pages提供了個(gè)人主頁(yè)創(chuàng)建的功能。我們看看都有哪些大牛在上面建立了主頁(yè):
Linus Torvalds,全球著名的電腦程序員、黑客,Linux 之父。
- https://github.com/torvalds
Jake Wharton, Android 之神,GitHub 全球排名第二位。
- https://github.com/JakeWharton
你可以搭建成這樣的主頁(yè):

找工作,面試加分。
原來(lái)github還有社交功能,一個(gè)好的github可以為面試加不少分,讓你贏在起跑線上。而且現(xiàn)在越來(lái)越多知名公司活躍在GitHub,發(fā)布開(kāi)源庫(kù)并招募各類人才。所以大家不要忘了打造好自己的主頁(yè)哦。
如何入門(mén)github
官方教程
官方出手,最為致命。這個(gè)教程就是:GitHub Learning Lab 。它是 GitHub 官方出的一個(gè)交互式學(xué)習(xí)課程,主要教授 GitHub 新手如何正確的使用 GitHub,如提交 commit、創(chuàng)建分支、發(fā)起 Pull Request ,如何用 GitHub Pages 等。

這里是傳送門(mén):https://lab.github.com/
GitHub入門(mén)與實(shí)踐
這本書(shū)比較簡(jiǎn)單,講解了 github 的界面交互和基本原理,如果工作中用的是 gitlab、bitbucket 這種遠(yuǎn)程倉(cāng)庫(kù)等。
git book
地址:https://git-scm.com/book/zh/v2