? ? ? 忙了一個(gè)多星期,最近終于可以抽出點(diǎn)時(shí)間來寫點(diǎn)什么了。前段時(shí)間有幾個(gè)小伙伴一直問我如何到github上去下載好的項(xiàng)目,如何使用好github。要知道github上面一大堆亂七八糟全是英文,對(duì)于英文不大好的朋友來說那可是等于再看另一種程序語言,但是,不怕,下面的基礎(chǔ)教程將帶你從git開始一步一步去搗鼓你的github

? ? ? github是個(gè)啥!項(xiàng)目代碼的集中營?好基友的窩點(diǎn)?尚且你可以這么理解。按照官方的解釋來說,github是一個(gè)面向開源及私有軟件項(xiàng)目的托管平臺(tái),說白了它就是一個(gè)來放置管理你的項(xiàng)目代碼的平臺(tái),(就想一個(gè)大糧倉一樣,大米就是你的代碼)。github上有好多國內(nèi)外優(yōu)秀開源的項(xiàng)目案例,當(dāng)然可能還會(huì)有我們找不到的私有的好項(xiàng)目(需要花錢的),github這個(gè)平臺(tái)牛到什么程度呢!聽過一點(diǎn)常識(shí)的小伙伴應(yīng)該知道,當(dāng)年的硅谷四大天王之首的互聯(lián)網(wǎng)公司google(谷歌)搞出來一個(gè)google Code.用來收集管理世界上優(yōu)秀的項(xiàng)目,剛開始這個(gè)googlecode火的不要不要的,基本上無數(shù)的開發(fā)者都在用它。萬萬沒想到!github在2008年橫空出世。以迅雷不及掩耳盜鈴之勢(shì)搶占了google的市場(chǎng),最后谷歌微軟這些大公司不得已也就將所有的開源項(xiàng)目移植到了github平臺(tái)上。為何這么吊,誰用誰知道(我也不知道)。那git又是啥,git和github又有著什么千絲萬縷的關(guān)系呢?不多說了,一句話,你學(xué)會(huì)了git就可以來操控github

? ? ? 玩轉(zhuǎn)github,首先你得有個(gè)github賬號(hào)吧,趕緊去注冊(cè)一個(gè)吧(www.github.com),由于github官網(wǎng)服務(wù)器是美國佬那里,中國大陸連接可能比較慢(如果你會(huì)翻墻,更好)

按照要求注冊(cè)好一個(gè)賬號(hào)之后,官網(wǎng)會(huì)給你發(fā)一封郵件激活,所以你的郵箱一定要填在用活期的,扣扣郵箱也可以,但扣扣郵箱有時(shí)候會(huì)阻止外來郵件。如果你用的是扣扣郵箱收不到那封郵件,這時(shí)候需要設(shè)置一下,打開扣扣郵箱,點(diǎn)擊設(shè)置——反垃圾——(白名單里)設(shè)置域名白名單,寫好github.com之后,點(diǎn)擊添加到域名白名單就OK。所有注冊(cè)好后就登錄吧,登錄之后就到了github主頁了,一般來說github重要的劃分為github主頁、倉庫主頁、個(gè)人主頁。點(diǎn)擊左上角的logo小圖標(biāo),會(huì)有兩種情況,任何情況下都適用:如果你沒有登錄,會(huì)跳到github官網(wǎng)主頁,如果你已經(jīng)登錄了,會(huì)跳到你的github主頁,就像這樣

(郵箱必須要激活)接下來點(diǎn)擊圖中“Start a project”,開始創(chuàng)建你的github上屬于你的第一個(gè)倉庫,倉庫名(Repository name)一般是你該項(xiàng)目的名稱,一個(gè)倉庫就代表了一個(gè)開源項(xiàng)目,Description(optional)填寫你的該項(xiàng)目的描述信息(可以修改的)。Initialize this repository with a README代表該倉庫一些初始化信息(勾上)。倉庫暫且先公有(Public)? Private是需要付費(fèi)滴,一個(gè)月7美元(話說也不太貴噢),所有填好之后,點(diǎn)擊Create Rrposiyory,你就創(chuàng)建了一個(gè)項(xiàng)目倉庫了,頁面跳轉(zhuǎn)到倉庫主頁

倉庫主頁
在這個(gè)倉庫主頁左上角有兩個(gè)鏈接'fqblog','SecondProject'??吹搅藛幔谝粋€(gè)跳轉(zhuǎn)到你的個(gè)人主頁,個(gè)人主頁里也就是設(shè)置一些你的個(gè)人信息。第二個(gè)跳轉(zhuǎn)到倉庫主頁(在此點(diǎn)擊還是在本頁面),其中在倉庫主頁里有幾個(gè)比較重要的東東!
右上角
? ? ? ? ? 1.Watch:關(guān)注你的這個(gè)(倉庫)項(xiàng)目的人數(shù)(類似于點(diǎn)贊)
? ? ? ? ? 2.Star:收藏了你這個(gè)項(xiàng)目的人數(shù)
? ? ? ? ? 3.Fork:你這個(gè)倉庫被人家復(fù)制(全部拿去)了多少份(一旦你fork了別人的某個(gè)倉庫,在你的github上就會(huì)出現(xiàn)這個(gè)屬于你的倉庫,一模一樣啊)
(下面)從左往右
? ? ? ? ? ? ?1.Code:倉庫里所有的文件
? ? ? ? ? ? ?2.Issues:嗯~~怎么說呢!就是個(gè)聊天工具,如果你發(fā)現(xiàn)別人的倉庫(項(xiàng)目代碼)有bug,可以通過新建一個(gè)issues和對(duì)方通信,對(duì)方上線后就會(huì)看到你給他發(fā)的這個(gè)issues,也就會(huì)回復(fù)你
? ? ? ? ? ? ?3.Pull Requests:發(fā)一個(gè)請(qǐng)求給對(duì)方,比issues更先進(jìn)一點(diǎn),就是說你fork了對(duì)方的項(xiàng)目之后發(fā)現(xiàn)了bug,你自己修改好之后又想把這個(gè)好的代碼更新到對(duì)方的倉庫里,這是就可以給對(duì)方發(fā)一個(gè)pull requests,對(duì)方看到后,沒問題,同意!他的那個(gè)倉庫里就是你修改后的項(xiàng)目
? ? ? ? ? ? ?4.project 以及后面幾個(gè)不講了,不常用,最后有個(gè)settings里可以邀請(qǐng)協(xié)作者(好友共同開發(fā)這個(gè)倉庫項(xiàng)目)
再往下走
? ? ? ? ? ? 1.Create New File(在倉庫里創(chuàng)建一個(gè)新文件)。Upload files(上傳文件到倉庫)。Find file(在本倉庫里搜索文件)
? ? ? ? ? ? 2.Clone or download:下載該項(xiàng)目(一般不這么做),常見的做法是復(fù)制該鏈接,將該倉庫克隆到本地(通過git)
以上就是對(duì)github的基礎(chǔ)界面介紹
下面開始學(xué)習(xí)那個(gè)強(qiáng)大的代碼版本管理工具Git
? ? ? 在一個(gè)風(fēng)雨交加的夜晚,你精神飽滿,卻閑來無事,瑣碎沏一杯咖啡,抹一縷茶香,正在悠閑滴逛著github,猛然間,眼前一亮,咦!這么優(yōu)秀的代碼,嗯~?~對(duì)我的那個(gè)模塊性能似不似可以優(yōu)化一下呢。嗯!試試就試試,不多說,搞下來!
第一步:下載安裝git.自己下載,網(wǎng)速太慢?我給大家分享一個(gè)git百度云分享?(密碼:vqm5)
下載后直接下一步安裝,安裝好之后,在你的電腦桌面右擊鼠標(biāo),如果能看到“Git GUI Here”和“Git Bash Here”,那就說明你安裝成功了,點(diǎn)擊git bash here,就彈出了git命令行窗口了

下面通過一個(gè)例子來演示如何通過git管理github項(xiàng)目
? ? ? 首先回到故事的開始,你發(fā)現(xiàn)了那個(gè)開源項(xiàng)目,第一步當(dāng)然是要把它下載到你本地文件夾啦,所以現(xiàn)需要在你本地新建一個(gè)文件夾作為存放本地倉庫的地方,這里我在我的D盤建了一個(gè)workingdirectory.進(jìn)入到該盤符,鼠標(biāo)右擊,打開git bash here(最直接的方法)。

一:初始化工作
? ? ? ? 1.初始化用戶名和郵箱(為了在github 上顯示最后一次是哪個(gè)用戶修改了項(xiàng)目,只需初始化一次)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? git config --global user.name 'fgblog'
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? git config --global user.email '2933595789@qq.com'
? ? ? ? ? ? 2.初始化倉庫(生成.git文件,倉庫的配置信息)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?git init

二:把github上的倉庫clone(克隆)下來
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?git clone?
三:改動(dòng)倉庫!例如本地倉庫里新建一個(gè)文件(或一個(gè)文件夾)(或?qū)ζ湓鰟h改都行,只要改動(dòng)了這個(gè)克隆下來的倉庫),如果你不熟悉linux命令,就像平常那樣建立文件夾一樣

touch:新建一個(gè)文件(不是文件夾哦)
mkdir:新建一個(gè)文件夾
ls:列出當(dāng)前目錄下所有目錄
vim:對(duì)制定文件進(jìn)行編輯
cat:查看制定目錄的內(nèi)容
四:推送改動(dòng)后的文件(項(xiàng)目)到github上,和svn不同,git是分布式管理工具,一般來說git推送項(xiàng)目分三步,第一先(git add a.html )將文件從本地推送到暫存區(qū),第二(git commit -m '描述信息')將文件從暫存區(qū)推送到倉庫(還是本地倉庫,所以這也是為什么要在本地構(gòu)建一個(gè)本地倉庫的原因)。第三,(git push)將文件從本地倉庫推送到遠(yuǎn)程倉庫,也就是你的github上(其實(shí)這一步就是在將本地的.git文件更新到遠(yuǎn)程倉庫)。在以上幾步中,每一步都可以(git status)查看當(dāng)前本地倉庫的一個(gè)狀態(tài)(個(gè)人理解是暫存區(qū)的狀態(tài),看黑窗口便知)。最后便是下面如此......
