深入掌握Git&GitHub技術(shù)


【GitHub簡(jiǎn)介】
GitHub 是一個(gè)面向開(kāi)源及私有軟件項(xiàng)目的托管平臺(tái),因?yàn)橹恢С?Git 作為唯一的版本庫(kù)格式進(jìn)行托管,故名 GitHub。
除了?Git?代碼倉(cāng)庫(kù)托管及基本的 Web 管理界面以外,還提供了訂閱、討論組、文本渲染、在線(xiàn)文件編輯器、協(xié)作圖譜(報(bào)表)、代碼片段分享(Gist)等功能。目前,其注冊(cè)用戶(hù)已經(jīng)超過(guò) 350 萬(wàn),托管版本數(shù)量也是非常之多,其中不乏知名開(kāi)源項(xiàng)目?Ruby?on Rails、jQuery、python?等。
?
【GitHub基本功能】
作為一個(gè)分布式的版本控制系統(tǒng),在Git中并不存在主庫(kù)這樣的概念,每一份復(fù)制出的庫(kù)都可以獨(dú)立使用,任何兩個(gè)庫(kù)之間的不一致之處都可以進(jìn)行合并。
GitHub可以托管各種git庫(kù),并提供一個(gè)web界面,但它與外國(guó)的SourceForge、Google Code或中國(guó)的coding的服務(wù)不同,GitHub的獨(dú)特賣(mài)點(diǎn)在于從另外一個(gè)項(xiàng)目進(jìn)行分支的簡(jiǎn)易性。為一個(gè)項(xiàng)目貢獻(xiàn)代碼非常簡(jiǎn)單:首先點(diǎn)擊項(xiàng)目站點(diǎn)的“fork”的按鈕,然后將代碼檢出并將修改加入到剛才分出的代碼庫(kù)中,最后通過(guò)內(nèi)建的“pull request”機(jī)制向項(xiàng)目負(fù)責(zé)人申請(qǐng)代碼合并。已經(jīng)有人將GitHub稱(chēng)為代碼玩家的MySpace。
在GitHub進(jìn)行分支就像在Myspace(或Facebook…)進(jìn)行交友一樣,在社會(huì)關(guān)系圖的節(jié)點(diǎn)中不斷的連線(xiàn)。
GitHub項(xiàng)目本身自然而然的也在GitHub上進(jìn)行托管,只不過(guò)在一個(gè)私有的,公共視圖不可見(jiàn)的庫(kù)中。開(kāi)源項(xiàng)目可以免費(fèi)托管,但私有庫(kù)則并不如此。Chris Wanstrath,GitHub的開(kāi)發(fā)者之一,肯定了通過(guò)付費(fèi)的私有庫(kù)來(lái)在財(cái)務(wù)上支持免費(fèi)庫(kù)的托管這一計(jì)劃。
通過(guò)與客戶(hù)的接洽,開(kāi)發(fā)FamSpam,甚至是開(kāi)發(fā)GitHub本身,GitHub的私有庫(kù)已經(jīng)被證明了物有所值。任何希望節(jié)省時(shí)間并希望和團(tuán)隊(duì)其它成員一樣遠(yuǎn)離頁(yè)面頻繁轉(zhuǎn)換之苦的人士都會(huì)從GitHub中獲得他們真正想要的價(jià)值。
在GitHub,用戶(hù)可以十分輕易地找到海量的開(kāi)源代碼。
?
【系統(tǒng)學(xué)習(xí)并掌握Git&GitHub】
尚硅谷Git&GitHub教程——深度解析
https://www.bilibili.com/video/BV1pW411A7a5
課程詳情:
Git是先進(jìn)的分布式版本控制系統(tǒng),而Github是常用的Git代碼托管中心。本套教程內(nèi)容豐富、詳實(shí),囊括:Git安裝過(guò)程、本地庫(kù)基本操作、遠(yuǎn)程基本操作、基于分支的Gitflow工作流、跨團(tuán)隊(duì)協(xié)作的 Forking工作流、Eclipse中的Git版本控制以及Git對(duì)Eclipse特定文件忽略的配置方法。還通過(guò)展示Git內(nèi)部版本管理機(jī)制,讓你了解 到Git高效操作的底層邏輯。教程的最后完整演示了Gitlab服務(wù)器的搭建過(guò)程。
