github有哪些東西?其實(shí)是很多東西。我不認(rèn)為你必須使用它,但是它的確匯集了世界上的優(yōu)秀程序員和工程師,匯集了有開源精神和情懷的一幫人,匯集了各種開源技術(shù)!

  你是否需要GitHub?

  要了解Github,我們首先要知道Git,Git是管理代碼的工具,寫代碼不是件輕松的事兒,一個(gè)人寫的時(shí)候已經(jīng)不輕松了,一群人寫就更不輕松 了,但這世界上很多事都是怎么不輕松怎么來的,大部分人都會(huì)和別人一起寫代碼,問題在于,這么多人寫一個(gè)東西,你今天寫一點(diǎn),我明天寫一點(diǎn),然后發(fā)現(xiàn)你寫 錯(cuò)了,又影響到了我前天寫的,最后匯總的時(shí)候怎么查找錯(cuò)誤?又在什么時(shí)候匯總?這些問題太多了,想想就覺得還是食物美好。為了讓寫代碼這件事兒美好一點(diǎn), 我們有了一種名叫代碼管理的東西,Git正是其中之一,我使用過的還有SVN,但是今天我們只講Git。

  Git的核心思想是『分布式』,我們?cè)诜?wù)器上面有一個(gè)『主倉庫』,這里放的是拿得出臺(tái)面的代碼,我們也可以在自己的電腦上創(chuàng)建分支,這些分支由 『主倉庫』克隆而來,然后我們就可以愉快的在自己的電腦上寫代碼了,寫完代碼可以同步在自己電腦的分支里面,當(dāng)你覺得自己的代碼拿得出臺(tái)面,我們可以申請(qǐng) 把自己的代碼更新到『主倉庫』里面,一旦通過這樣的審核,我們就對(duì)『主倉庫』做了某種貢獻(xiàn),世界各地的杰出程序員不斷的為一個(gè)項(xiàng)目的『主倉庫』做貢獻(xiàn),讓 這個(gè)項(xiàng)目變得越來越完善。

  Github是運(yùn)用Git思想來工作的一個(gè)商業(yè)網(wǎng)站,所有開發(fā)者都可以在Github上面為自己的項(xiàng)目創(chuàng)建一個(gè)『主倉庫』,好的項(xiàng)目就像狼群中的小鮮肉一樣,大量的開發(fā)者會(huì)把這個(gè)主倉庫中的代碼克隆到自己的『分倉庫』去,用更性感的話來說,就是『Fork』。

  Git的方式的確很優(yōu)雅,但問題在于,會(huì)有人愿意把自己辛辛苦苦的代碼拿出來公布,并且讓人Fork么?

  會(huì),不僅會(huì),而且很多,Github有超過140萬用戶,你可能會(huì)撇撇嘴說那個(gè)啥啥社交軟件都有2000萬用戶,區(qū)區(qū)140萬算個(gè)啥??墒沁@140 萬用戶幾乎涵蓋了這個(gè)世界上最優(yōu)秀的開發(fā)者,我相信,你那個(gè)有2000W用戶的社交軟件的工程師,肯定也是用Github的。任何項(xiàng)目,在Github上 面獲得fork或star,都意味著其它工程師對(duì)這個(gè)項(xiàng)目的認(rèn)可,這比100個(gè)QQ空間的贊更有價(jià)值。

  為什么這些優(yōu)秀的工程師會(huì)開源自己的項(xiàng)目?

  因?yàn)殚_源是一種精神。

  無數(shù)的軟件開發(fā)者苦心積慮保護(hù)自己的代碼不被破解,而還是被聰明絕頂?shù)哪_本小子破解了,但破解無數(shù)軟件的腳本小子在接下來的破解中卻傻眼了,因?yàn)檫@是開源的,不用破解也就破解了破解。

  閉源意味著封閉,而開源則意味著開放,封閉很難進(jìn)步,開放才會(huì)進(jìn)步。開放讓人類的智慧有聚集的可能,人類的智慧聚集起來不再是1+1=2,這是開源 的力量。閉源是一種排斥,而開源是包容,閉源是單打獨(dú)斗,開源是同仇敵愾,閉源是敝帚自珍,開源是無私奉獻(xiàn),閉源是小富即安,開源是世界大同,閉源是資本 主義,開源是共產(chǎn)主義。

  所以我一直想不通為啥Github會(huì)被墻。

  閉源讓微軟成帝國,讓蘋果成神話,但是,這是商業(yè),如果沒有技術(shù)的開源,這些商業(yè)的閉源也基本是無米之炊。商業(yè)需要閉源,而技術(shù)需要開源,利益需要閉源,而情懷需要開源。

  開源是技術(shù)的『本善』。

  我不排斥閉源,但是我贊美開源,就像我我忍受黑暗,但卻心存光明一樣,就像我頓頓吃素,卻依然熱愛肉食一樣。

  當(dāng)然,我沒有頓頓吃素。

  哈爾濱品用軟件有限公司致力于為哈爾濱的中小企業(yè)制作大氣、美觀的優(yōu)秀網(wǎng)站,并且能夠搭建符合百度排名規(guī)范的網(wǎng)站基底,使您的網(wǎng)站無需額外費(fèi)用,即可穩(wěn)步提升排名至首頁。歡迎體驗(yàn)最佳的哈爾濱網(wǎng)站建設(shè)。