什么是GitHub
每當(dāng)了解一個新玩意的時候首先我想知道的總是這玩意到底是個啥。GitHub嘛渣聚,不就是為開發(fā)者提供 Git 倉庫的托管服務(wù)嘛独榴,同時你可以分享你的倉庫給任何人,通俗來說奕枝,大致上就像一個可以查文件修改歷史的網(wǎng)盤棺榔。你可以不斷得提交你修改的文件(這里的文件可以是你寫的小說啊,你制作的視頻啊隘道,你偷藏的電子書啊症歇,還可以是你辛辛苦苦抹的代碼),同時可以恢復(fù)到舊的版本谭梗。還可以邀請其他人來和你一起改你的文件忘晤。差不多就是這么個簡單的玩意兒。當(dāng)然激捏,在你了解了之后會發(fā)現(xiàn)设塔,他還有很多666的功能。OK远舅,我來附上官方網(wǎng)址闰蛔,大家可以先看看這哥們的樣子。另外這里有GitHub被玩壞的LOGO图柏。
什么是Git
Git 屬于分散型版本管理系統(tǒng)序六,是為版本管理而設(shè)計的軟件。它是由Linux 的創(chuàng)始人 Linus Torvalds 在 2005 年開發(fā)了的原型程序發(fā)展而來爆办。其性能和功能自然沒的說难咕,用過的基佬都說好~
注冊使用GitHub
去官方網(wǎng)址注冊就好了沒啥特別說明的地方。注冊之后包括倉庫距辆、分支的創(chuàng)建等官方都給出了圖文教程余佃,這里不再贅述。雖然是英文版的跨算,但是希望大家能耐著性子看看(已經(jīng)熟悉的同學(xué)可以直接忽略)爆土,更多官方教程可以看這里。
安裝Git
扯了半天沒用的诸蚕,趕緊進入正題步势,要想使用GitHub氧猬,首先我們需要安裝Git,MAC和linux系統(tǒng)不必多說了坏瘩,一般現(xiàn)在的系統(tǒng)都是默認安裝Git盅抚,我就只說一下windows的安裝,首先當(dāng)然是下載Git for windows(或者從這里下載也可以),下載完成后安裝倔矾,這里對幾個安裝選項進行簡單的說明妄均,配置好一路next,最后點擊install就完成安裝了(下圖是我在安裝時勾選的選項)哪自。
使用Git
初始設(shè)置
設(shè)置姓名和郵箱(該設(shè)置會在~/.gitconfig中生成配置丰包,并且在提交時會被公開哦~):
//設(shè)置姓名
git config --global user.name "L.T.Any"
//設(shè)置郵箱
git config --global user.email "linetoanywhere@gmail.com"
//設(shè)置輸出內(nèi)容高亮
git config --global color.ui auto
設(shè)置SSH Key
使用GitHub連接到已有倉庫時,需要使用SSH的公鑰進行認證壤巷,因此我們需要在本地創(chuàng)建一對密鑰邑彪,本地Git Bash上執(zhí)行如下:
創(chuàng)建好SSH Key后琳要,我們需要把它導(dǎo)入到GitHub中去顿仇,具體導(dǎo)入過程見下圖:
導(dǎo)入完成后我們可以簡單測試一下是否可用,具體檢驗方法如下:(當(dāng)出現(xiàn)Hi 涯雅。撑柔。瘸爽。。 access這樣的輸出時說明可用)
至此铅忿,SSH Key設(shè)置完成剪决。
下載并使用代碼倉庫
創(chuàng)建好代碼倉庫后就可以將他們下載到本地來進行編輯修改了。在GitHub上進入倉庫頁檀训,選擇Clone or Download柑潦,這里可以選擇使用https或者SSH,由于我們設(shè)置了SSH峻凫,因此選擇SSH渗鬼,復(fù)制地址,打開git荧琼,切換到目標(biāo)目錄譬胎,并執(zhí)行如下命令。
//克隆倉庫內(nèi)容到本地
git clone git@github.com:LineToAnyWhere/LineToAnyWhere.github.io.git
此時倉庫已經(jīng)下載到本地命锄,這時我們可以修改內(nèi)容堰乔,然后在本地倉庫中添加更改,之后提交更改脐恩「浜睿可以在內(nèi)容更改后執(zhí)行如下命令來在本地提交更改:
//添加更改后的文件到倉庫中,當(dāng)然也可以直接添加目錄
git add xxx.html //添加單個文件到目錄
git add . //添加當(dāng)前目錄中的文件
//提交更改的內(nèi)容
git commit -m "修改部分代碼" //只有在執(zhí)行完add后才可以提交更改,參數(shù)-m 后可以跟上此次提交的備注
到這里本地的更改已經(jīng)可以由本地倉庫來進行管理了驶冒,如果你需要在多個地點維護你的代碼苟翻,這時候你就需要將你的代碼提交到遠程倉庫韵卤,這里可以提交到GitHub上。
//提交本地倉庫到GitHub
git push
當(dāng)然崇猫,我們可以在任何時候查看我們的提交歷史記錄沈条,或者是查看當(dāng)前倉庫的狀態(tài)
//查看提交歷史紀錄
git log
//查看當(dāng)前倉庫狀態(tài)
git status
這里我給大家一個全套執(zhí)行的示例
GitHub快捷鍵
在GitHub上很多頁面都有快捷鍵,各個頁面查看快捷鍵的方式是按下shift+/邓尤。
GitHub使用流程
1.一般流程
- 在GitHub上進行Fork
- 將fork的倉庫克隆至本地
- 在本地環(huán)境中創(chuàng)建分支
- 修改分支代碼并提交至本地
- push代碼到fork的倉庫中
- 在GitHub上對Fork來源的倉庫發(fā)送Pull Request
2.不Fork的開發(fā)流程
- 共用一個遠程倉庫
- 使用不同賬戶clone項目到本地
- 創(chuàng)建分支修改本地代碼并提交
- push到遠程倉庫
- 在GitHub上合并分支
3.GitHub flow流程
- 令 master 分支時常保持可以部署的狀態(tài)
- 進行新的作業(yè)時要從 master 分支創(chuàng)建新分支拍鲤,新分支名稱要具有描述性
- 在新建的本地倉庫分支中進行提交
- 在 GitHub 端倉庫創(chuàng)建同名分支,定期 push
- 需要幫助或反饋時創(chuàng)建 Pull Request汞扎,以 Pull Request 進行交流
- 讓其他開發(fā)者進行審查,確認作業(yè)完成后與 master 分支合并
- 與 master 分支合并后立刻部署
4.Git flow流程
- 從開發(fā)版的分支(develop)創(chuàng)建工作分支(feature branches)擅这,進行功能的實現(xiàn)或修正
- 工作分支(feature branches)的修改結(jié)束后澈魄,與開發(fā)版的分支(develop)進行合并
- 重復(fù)上述流程,不斷實現(xiàn)功能直至可以發(fā)布
- 創(chuàng)建用于發(fā)布的分支(release branches)仲翎,處理發(fā)布的各項工作
- 發(fā)布工作完成后與 master 分支合并痹扇,打上版本標(biāo)簽(Tag)進行發(fā)布
- 如果發(fā)布的軟件出現(xiàn) BUG,以打了標(biāo)簽的版本為基礎(chǔ)進行修正(hotfixes)
Gist
Gist A 是一款簡單的 Web 應(yīng)用程序溯香,常被開發(fā)者們用來共享示例代
碼和錯誤信息鲫构。其功能有些像簡單的,可共享的備忘錄玫坛,共享時只需將需要共享內(nèi)容的URL發(fā)送給要共享的人即可结笨,共享者之間還可以互相評論留言。當(dāng)然湿镀,他本身也是在Git版本控制的管理之下炕吸,可以隨時可以查看修改的歷史記錄,他還支持多種代碼高亮勉痴。感興趣的朋友可以試試赫模,這里不再贅述。
GitHub的GUI客戶端##
其他提供類似GitHub功能的開源軟件
更多
本文僅僅展示了最簡單的GitHub和git的使用方法蒸矛,此后會不定期在此文章上更新一些GitHub功能的使用方法瀑罗,至于Git會另寫一篇文章專門說明Git這個命令的各種參數(shù)用法。這里為大家推薦兩本書雏掠,一本講述了GitHub的詳細使用斩祭,書名《GitHub入門與實踐》,作者是[日]大塚弘記磁玉。另一本是高級Git的使用方法停忿,書名《Pro Git》,不過目前這本書沒有中文版蚊伞,大家也可以參考《Git版本控制管理(第2版)》席赂。另外《Pro Git》的英文版是可以從Git的官網(wǎng)下載PDF的吮铭。