GitHub & Git 入門教程

什么是GitHub

每當了解一個新玩意的時候首先我想知道的總是這玩意到底是個啥。GitHub嘛,不就是為開發者提供 Git 倉庫的托管服務嘛,同時你可以分享你的倉庫給任何人,通俗來說,大致上就像一個可以查文件修改歷史的網盤。你可以不斷得提交你修改的文件(這里的文件可以是你寫的小說啊,你制作的視頻啊,你偷藏的電子書啊,還可以是你辛辛苦苦抹的代碼),同時可以恢復到舊的版本。還可以邀請其他人來和你一起改你的文件。差不多就是這么個簡單的玩意兒。當然,在你了解了之后會發現,他還有很多666的功能。OK,我來附上官方網址,大家可以先看看這哥們的樣子。另外這里有GitHub被玩壞的LOGO

什么是Git

Git 屬于分散型版本管理系統,是為版本管理而設計的軟件。它是由Linux 的創始人 Linus Torvalds 在 2005 年開發了的原型程序發展而來。其性能和功能自然沒的說,用過的基佬都說好~

注冊使用GitHub

官方網址注冊就好了沒啥特別說明的地方。注冊之后包括倉庫、分支的創建等官方都給出了圖文教程,這里不再贅述。雖然是英文版的,但是希望大家能耐著性子看看(已經熟悉的同學可以直接忽略),更多官方教程可以看這里。

安裝Git

扯了半天沒用的,趕緊進入正題,要想使用GitHub,首先我們需要安裝Git,MAC和linux系統不必多說了,一般現在的系統都是默認安裝Git,我就只說一下windows的安裝,首先當然是下載Git for windows(或者從這里下載也可以),下載完成后安裝,這里對幾個安裝選項進行簡單的說明,配置好一路next,最后點擊install就完成安裝了(下圖是我在安裝時勾選的選項)。

git_install1.jpg
git_install2.jpg
git_install3.jpg
git_install4.jpg
git_install5.jpg

使用Git

初始設置

設置姓名和郵箱(該設置會在~/.gitconfig中生成配置,并且在提交時會被公開哦~):

//設置姓名
git config --global user.name "L.T.Any"
//設置郵箱
git config --global user.email "linetoanywhere@gmail.com"
//設置輸出內容高亮
git config --global color.ui auto

設置SSH Key

使用GitHub連接到已有倉庫時,需要使用SSH的公鑰進行認證,因此我們需要在本地創建一對密鑰,本地Git Bash上執行如下:

SSH_Key.gif

創建好SSH Key后,我們需要把它導入到GitHub中去,具體導入過程見下圖:

add_ssh_key.png

導入完成后我們可以簡單測試一下是否可用,具體檢驗方法如下:(當出現Hi 。。。。 access這樣的輸出時說明可用)

check_ssh_key.png

至此,SSH Key設置完成。

下載并使用代碼倉庫

創建好代碼倉庫后就可以將他們下載到本地來進行編輯修改了。在GitHub上進入倉庫頁,選擇Clone or Download,這里可以選擇使用https或者SSH,由于我們設置了SSH,因此選擇SSH,復制地址,打開git,切換到目標目錄,并執行如下命令。

Clone_Or_Download.png
//克隆倉庫內容到本地
git clone git@github.com:LineToAnyWhere/LineToAnyWhere.github.io.git

此時倉庫已經下載到本地,這時我們可以修改內容,然后在本地倉庫中添加更改,之后提交更改。可以在內容更改后執行如下命令來在本地提交更改:

//添加更改后的文件到倉庫中,當然也可以直接添加目錄
git add xxx.html    //添加單個文件到目錄
git add .           //添加當前目錄中的文件
//提交更改的內容
git commit -m "修改部分代碼"  //只有在執行完add后才可以提交更改,參數-m 后可以跟上此次提交的備注

到這里本地的更改已經可以由本地倉庫來進行管理了,如果你需要在多個地點維護你的代碼,這時候你就需要將你的代碼提交到遠程倉庫,這里可以提交到GitHub上。

//提交本地倉庫到GitHub
git push

當然,我們可以在任何時候查看我們的提交歷史記錄,或者是查看當前倉庫的狀態

//查看提交歷史紀錄
git log
//查看當前倉庫狀態
git status

這里我給大家一個全套執行的示例

Use_Git.gif

GitHub快捷鍵

在GitHub上很多頁面都有快捷鍵,各個頁面查看快捷鍵的方式是按下shift+/

GitHub使用流程

1.一般流程

  • 在GitHub上進行Fork
  • 將fork的倉庫克隆至本地
  • 在本地環境中創建分支
  • 修改分支代碼并提交至本地
  • push代碼到fork的倉庫中
  • 在GitHub上對Fork來源的倉庫發送Pull Request

2.不Fork的開發流程

  • 共用一個遠程倉庫
  • 使用不同賬戶clone項目到本地
  • 創建分支修改本地代碼并提交
  • push到遠程倉庫
  • 在GitHub上合并分支

3.GitHub flow流程

  • 令 master 分支時常保持可以部署的狀態
  • 進行新的作業時要從 master 分支創建新分支,新分支名稱要具有描述性
  • 在新建的本地倉庫分支中進行提交
  • 在 GitHub 端倉庫創建同名分支,定期 push
  • 需要幫助或反饋時創建 Pull Request,以 Pull Request 進行交流
  • 讓其他開發者進行審查,確認作業完成后與 master 分支合并
  • 與 master 分支合并后立刻部署

4.Git flow流程

  • 從開發版的分支(develop)創建工作分支(feature branches),進行功能的實現或修正
  • 工作分支(feature branches)的修改結束后,與開發版的分支(develop)進行合并
  • 重復上述流程,不斷實現功能直至可以發布
  • 創建用于發布的分支(release branches),處理發布的各項工作
  • 發布工作完成后與 master 分支合并,打上版本標簽(Tag)進行發布
  • 如果發布的軟件出現 BUG,以打了標簽的版本為基礎進行修正(hotfixes)

Gist

Gist A 是一款簡單的 Web 應用程序,常被開發者們用來共享示例代
碼和錯誤信息。其功能有些像簡單的,可共享的備忘錄,共享時只需將需要共享內容的URL發送給要共享的人即可,共享者之間還可以互相評論留言。當然,他本身也是在Git版本控制的管理之下,可以隨時可以查看修改的歷史記錄,他還支持多種代碼高亮。感興趣的朋友可以試試,這里不再贅述。

GitHub的GUI客戶端##

其他提供類似GitHub功能的開源軟件

更多

本文僅僅展示了最簡單的GitHub和git的使用方法,此后會不定期在此文章上更新一些GitHub功能的使用方法,至于Git會另寫一篇文章專門說明Git這個命令的各種參數用法。這里為大家推薦兩本書,一本講述了GitHub的詳細使用,書名《GitHub入門與實踐》,作者是[日]大塚弘記。另一本是高級Git的使用方法,書名《Pro Git》,不過目前這本書沒有中文版,大家也可以參考《Git版本控制管理(第2版)》。另外《Pro Git》的英文版是可以從Git的官網下載PDF的。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 1. 安裝 Github 查看是否安裝git: $ git config --global user.name "...
    Albert_Sun閱讀 13,721評論 9 163
  • 寫日記提升自我,規劃人生,扶貧生活離不開
    陳榮明老師閱讀 339評論 0 0
  • 我喜歡詩情帶給我的美妙,用心體驗詩句的溫柔,感受它帶給我的韻味。微雨如酥 草色遙看近卻無 我喜歡文學的深淵,它的魅...
    Lareine_6c39閱讀 180評論 0 0
  • 時間沒有讓我忘了你 只是讓我更想你 因為深愛 所以不敢打擾 因為深愛 所以改變了習慣 變得話更少 變得更堅強 變得...
    柳若素閱讀 238評論 1 1
  • 可是就是這樣定點了 殷紅色的血在脖頸處結了痂 白色粗線條描繪出你躺著的形狀 在場的每個人都像是兇手 都一一過來 出...
    小橙君閱讀 170評論 5 2