從0開(kāi)始學(xué)習GitHub 系列之「01.初識 GitHub」
1. 寫(xiě)在前面
本文引用地址:http://dyxdggzs.com/article/201704/346809.htm我一直認為 GitHub 是程序員必備技能,程序員應該沒(méi)有不知道 GitHub 的才對,沒(méi)想到這兩天留言里給我留言最多的就是想讓我寫(xiě)關(guān)于 GitHub 的教程,說(shuō)看了不少資料還是一頭霧水,我轉念一想,我當初接觸 GitHub 也大概工作了一年多才開(kāi)始學(xué)習使用,我讀者里很多是初學(xué)者,而且還有很多是在校大學(xué)生,所以不會(huì )用 GitHub 也就不奇怪了,所以我覺(jué)得寫(xiě)一寫(xiě)關(guān)于 GitHub 的教程就非常有必要了!
2. 為什么還要造輪子
很多人難免要問(wèn)這個(gè)問(wèn)題,說(shuō)網(wǎng)上關(guān)于 GitHub 的資料很多,為什么還要寫(xiě)呢?講真,網(wǎng)上關(guān)于 Android 的資料更多,為什么你們還喜歡看我寫(xiě)的文章呢?是因為哪怕同樣的內容,我寫(xiě)出來(lái)之后就有了我的風(fēng)格,除了我的幽默以及我的帥,關(guān)鍵的是我有辦法讓你們看的輕松易懂,并且還有我個(gè)人的一些見(jiàn)解與指導,這大概是一種特殊的魅力吧!
我是從小白一路過(guò)來(lái)的,很能理解你們內心的感受與困惑,因為這些階段都是我自己親身經(jīng)歷過(guò)的,所以我寫(xiě)的文章都會(huì )從你們的角度去出發(fā),并且我對文章高要求,除了排版、配圖很用心外,文章的內容每次寫(xiě)完我都會(huì )親自看三四遍,確保不會(huì )出現誤導以及你們理解不了的情況,你們看的很輕松易懂的文章其實(shí)因為我背后做了很多的功課。
所以,為了你們,我覺(jué)得有必要用我的風(fēng)格去教你們如何從0開(kāi)始,跟著(zhù)我一步步學(xué)習 GitHub !
3. 什么是 GitHub
確切的說(shuō) GitHub 是一家公司,位于舊金山,由 Chris Wanstrath, PJ Hyett 與 Tom Preston-Werner 三位開(kāi)發(fā)者在2008年4月創(chuàng )辦。這是它的 Logo:

2008年4月10日,GitHub正式成立,地址:How people build software · GitHub ,主要提供基于Git的版本托管服務(wù)。一經(jīng)上線(xiàn),它的發(fā)展速度驚為天人,截止目前,GitHub 已經(jīng)發(fā)展成全球最大的開(kāi)(同)源(性)社區。
4. GitHub 與 Git 的關(guān)系
這個(gè)我還專(zhuān)門(mén)在群里調查過(guò),很多人以為 GitHub 就是 Git,其實(shí)這是一個(gè)理解誤區。
Git 是一款免費、開(kāi)源的分布式版本控制系統,他是著(zhù)名的 Linux 發(fā)明者 Linus Torvalds 開(kāi)發(fā)的。說(shuō)到版本控制系統,估計很多人都用過(guò) SVN ,只不過(guò) Git 是新時(shí)代的產(chǎn)物,如果你還在用 SVN 來(lái)管理你的代碼,那就真的有些落伍了。不管是學(xué)習 GitHub ,還是以后想從事編程行業(yè),Git 都可以算是必備技能了,所以從現在開(kāi)始建議你先去學(xué)習熟悉下 Git ,后面我會(huì )有文章推薦一些適合新手的 Git 學(xué)習資料給你們。
而 GitHub 上面說(shuō)了,主要提供基于 git 的版本托管服務(wù)。也就是說(shuō)現在 GitHub 上托管的所有項目代碼都是基于 Git 來(lái)進(jìn)行版本控制的,所以 Git 只是 GitHub 上用來(lái)管理項目的一個(gè)工具而已,GitHub 的功能可遠不止于此!
5. GitHub 的影響力
上面我說(shuō)了 GitHub 現在毫無(wú)疑問(wèn)基本是全球最大的開(kāi)源社區了,這樣說(shuō)你們可能認為未免有點(diǎn)浮夸,且聽(tīng)我一一舉證:
全球頂級科技公司紛紛加入 GitHub ,并貢獻他們自己的項目代碼
Google: https://github.com/google
蘋(píng)果: https://github.com/apple
Facebook: https://github.com/facebook
Twitter:https://github.com/twitter
微軟:https://github.com/microsoft
Square:https://github.com/square
阿里:https://github.com/alibaba
…
全球頂級開(kāi)源項目都優(yōu)先選擇在 GitHub 上開(kāi)源
Linux:https://github.com/torvalds/linux
Rails:https://github.com/rails/rails
Nodejs:https://github.com/nodejs/node
Swift:https://github.com/apple/swift
CoffeeScript:https://github.com/jashkenas/coffeescript
Ruby:https://github.com/ruby/ruby
…
全球頂級編程大牛加入GitHub
Linux 發(fā)明者 Linus Torvalds:https://github.com/torvalds

Rails 創(chuàng )始人 DHH:https://github.com/dhh

被稱(chēng)為「Android之神」的 JakeWharton:https://github.com/JakeWharton , 你們用的很多開(kāi)源庫如 ButterKnife、OkHttp、 Retrofit、 Picasso、ViewPagerIndicator 等都是出自他之手!

其他就不一一列舉了,GitHub 上活躍的很多是 Google 、Square、阿里等公司的員工,有些甚至還是Google Android Team組的,所以在這里你可以接觸到全球頂級編程大牛!
6. GitHub 有什么用
學(xué)習優(yōu)秀的開(kāi)源項目
開(kāi)源社區一直有一句流行的話(huà)叫「不要重復發(fā)明輪子」,某種意義上正是因為開(kāi)源社區的貢獻,我們的軟件開(kāi)發(fā)才能變得越來(lái)越容易,越來(lái)越快速。試想你在做項目時(shí),如果每一模塊都要自己去寫(xiě),如網(wǎng)絡(luò )庫、圖片加載庫、ORM庫等等,自己寫(xiě)的好不好是一回事,時(shí)間與資源是很大的成本。對于大公司可能會(huì )有人力與資源去發(fā)明一套自己的輪子,但是對于大部分互聯(lián)網(wǎng)創(chuàng )業(yè)公司來(lái)說(shuō)時(shí)間就是一切。而且你在使用開(kāi)源項目的過(guò)程也可以學(xué)習他們優(yōu)秀的設計思想、實(shí)現方式,這是最好的學(xué)習資料,也是一份提升自己能力的絕佳方式!
多人協(xié)作
如果你想發(fā)起一個(gè)項目,比如翻譯一份不錯的英文文檔,覺(jué)得一個(gè)人的精力不夠,所以你需要更多的人參與進(jìn)來(lái),這時(shí)候 GitHub 是你的最佳選擇,感興趣的人可以參與進(jìn)來(lái),利用業(yè)余時(shí)間對這個(gè)項目做貢獻,然后可以互相審核、合并,簡(jiǎn)直不要太棒!
搭建博客、個(gè)人網(wǎng)站或者公司官網(wǎng)
這個(gè)就不用多說(shuō)了,現在越來(lái)越多的博客都是基于 GitHub Pages 來(lái)搭建的了,你可以隨心所欲的定制自己的樣式,可以給你博客買(mǎi)個(gè)逼格高的域名,再也不用忍受各大博客網(wǎng)站的約束與各式各樣的廣告了!
寫(xiě)作
如果你喜歡寫(xiě)作,而且基于 Markdown, 并準備出版書(shū)籍,那么推薦你用 Gitbook ,技術(shù)寫(xiě)作人的最?lèi)?ài)!
個(gè)人簡(jiǎn)歷
如果你有一個(gè)活躍的 GitHub 賬號,上面有自己不錯的開(kāi)源項目,還經(jīng)常給別的開(kāi)源項目提問(wèn)題,push 代碼,那么你找工作將是一個(gè)非常大的優(yōu)勢,現在程序員的招聘很多公司都很看中你 GitHub 賬號,某種意義上 GitHub 就可以算是你的簡(jiǎn)歷了。而且不僅國內,很多國外的科技公司都會(huì )通過(guò) GitHub 來(lái)尋找優(yōu)秀的人才,比如我甚至通過(guò) GitHub 收到過(guò) Facebook 的邀請郵件!
其他
當然 GitHub 能做的還遠不止這些,我見(jiàn)過(guò)很多在 GitHub 搞的一些有意思的項目,有找男朋友的,甚至還有利用 GitHub 的 commit 喪心病狂的秀恩愛(ài)的,沒(méi)錯,那個(gè)喪心病狂的人就是我,如果你前段日子關(guān)注了我的 GitHub ,那么能看到這么一個(gè)壯觀(guān)的景象:

7. 加入 GitHub
讀完我的文章,我相信你已經(jīng)蠢蠢欲動(dòng)了,從現在開(kāi)始,立刻、馬上去注冊個(gè) GitHub 「https://github.com/」,去體驗一番,不會(huì )用不要緊,接下來(lái)我會(huì )有一系列詳細的文章,來(lái)教你學(xué)會(huì )使用 GitHub !
但是為了保證文章的質(zhì)量,我要做很多準備工作,我沒(méi)法保證每天都會(huì )連載,但是我會(huì )盡力盡快更新這個(gè)系列,讓你們從0開(kāi)始一步步一起來(lái)學(xué)習,如果周?chē)型瑢W(xué)或者朋友想要學(xué)習的,那趕緊轉發(fā)或者推薦他關(guān)注這個(gè)系列的文章,畢竟有個(gè)小伙伴一起學(xué)會(huì )更有氛圍,后續除了理論我還會(huì )考慮結合實(shí)踐,我不信你學(xué)不會(huì )!
評論