GitHub的基本功能 生動形象~ 不懂英語的進來

Fadeoc Khaos發表於2016-09-30

Github的基本功能:

  • Repository:你和我一起做“知乎首頁”,“知乎首頁”就是Repository,即專案或者”未來武器T2級425mm磁軌炮“之類,怎麼叫隨你,你只需知道Repository是個放專案的地方就行。有時候會出現Repositories,是多個Repository的意思。
  • Fork:我們把製作“知乎首頁“的工作分開,你負責美工,我負責前端開發,但我們還需要資料伺服器高手。你找來了一位php大牛,這位大牛很快搞定了伺服器端,閒來無事,就看了看我的前端程式碼,一看,“我靠,這怎麼一點也不語義化呢?全是尼瑪的清一色的<div>啊,將來做互動js還搞不搞dom了……”於是這大牛在Repository中找到了我寫的“zhi.html”,Fork了一份,也就是授權拷貝。
  • Branch:Fork之後,在大牛的Github上出現了一個同樣叫做“知乎首頁”的Repository,但是這個Repository是複製品,只歸他,這就是他的Branch,也就是分支。
  • Pull Request:大牛做完了一份全新的高階zhi.html,點了Pull Request,也就是推送請求。我接受了,看了一眼,頓時驚訝爆表,“中國足球——高,實在是高!”
  • 現在你懂了,Github的結構是Repository-Branch-(獲取/推送)檔案。你又發現Github可以比較兩個檔案的異同,新增的部分用綠色標記,刪除的部分用紅色標記。Pull Request還可以控制,甚至可以合併Branch,這就是團隊合作利器啊,真乃高大上也,手癢了吧?心動了吧?

  1. 註冊Github並登入。
  2. 下載客戶端並登入,客戶端負責你硬碟上的資料與Github伺服器資料的互動,然後設定儲存目錄。為了表現你的才華,你決定將此目錄命名為“諸神之爹”。
  3. 既然有這麼多的國外開源專案,我們國內哪有不自主的道理。必須要實踐一下這個頂好讚的Fork功能。現在你來到了Fadeoc/frontend · GitHub,你看到了這是使用者Fadeoc的一個叫做“frontend”的Repository,你笑了,這傢伙學習前端知識不過十天,程式碼一片渣,竟然有的程式碼裡只寫了“土豆”和“二狗子”幾個漢字。你點了一下右上角的Fork,然後clone in desktop,儲存到“諸神之爹”,哇!檔案已經在你電腦裡了,完全免費耶!+10086!
  4. 一個小時後,你對Fadeoc的渣程式碼頗有心得,決定幫他改良,不然他這專案就完了。你改好之後,Pull Request,這丫的竟然說你的程式碼太渣,不吸收。賤人!老子自己做,搶你市場份額!
  5. 你點了右上角自己頭像後面的+號,選擇了第一個New repository,即新建repository,並且起了個名字,叫做“完爆Fadeoc”,然後點選綠色按鈕set up in desktop,彈出儲存框,選擇“諸神之爹”。於是“諸神之爹”下出現了一個“完爆Fadeoc”的資料夾。
  6. 你自己寫了一份“神爹首頁.html”,把它放在了“完爆Fadeoc”資料夾下。
  7. 你開啟了客戶端,看到客戶端介面中master Branch(主人分支,這名字太雲端了)出現了一個Uncommitted changes,即未提交的變動,也就是你剛寫的“神爹首頁.html”。你點開show按鈕,在summary(摘要)的部分添上“滾你丫的Fadeoc”,在Description(細節描述)的位置是沒必要寫的,但你還是決定添上“爆你菊花”四個大字。然後選擇“Commit to 你的使用者名稱”。
  8. 為了把這個提交上傳到Github上讓賤人Fadeoc看到,你點選了客戶端右上角的後面顯示了一個“+1”的Sync,即同步,過了幾秒,Sync前的兩個曲線箭頭停止了轉動,同步成功了,“+1”消失,表示一個檔案成功上傳。
  9. 你來到Github,重新整理自己的個人頁,“完爆Fadeoc”這個Repository出現在頁面上,點開它,在裡面你看到了”神爹首頁.html”。
  10. 為了讓這個專案的初始目的更加淺顯易懂,你決定新增一個Readme.txt,雖然從前下載的N多軟體的資料夾裡總是有一個Readme.txt,你一個都沒開啟過。但在圈裡混,就得混的人模狗樣的,於是你在“完爆Fadeoc”下新建了一個Readme.txt,裡面寫上,“Fadeoc,沒錯,說的就是你,看我口型,你個賤人!”
  11. 同樣使用客戶端commit,然後sync,過了幾秒,重新整理github,你看到又多出了一個readme.txt。而且在下面又多出一個文字顯示框,裡面顯示的就是readme.txt裡面的內容“Fadeoc,沒錯,說的就是你,看我口型,你個賤人!”,避免了Fadeoc這個賤人不想開啟readme.txt也就看不到你親切問候的尷尬局面。Github真是貼心吶。
  12. 你複製了這個Repository的地址,Email給了Fadeoc。
  13. Fadeoc不是那麼容易被打敗的,於是他Fork了你的Repository,修改了readme.txt,然後pull request,你看到fadeoc新生成的branch下的readme.txt被改成了“你才是賤人”。你拒絕了合併請求。
  14. Fadeoc再次pull request,readme.txt改成了“敢不做惡嗎?”
  15. 你有點煩了,這他媽的怎麼才能不讓他pull request,將來大專案N多陌生人菜鳥pull request煩不煩,就不能不開源,轉私有嗎?你終於找到了Github的升級服務,你笑了,將這個Repository從Public轉成了Private。Fadeoc肯定會繼續pull request,得不到你回應的他只會漸漸被複仇的怒火燒盡理智,可是,誰在乎呢?

Github還有更多細節功能,在使用過程中,你會慢慢發現,慢慢學會。但是不管如何,現在你會使用Github的基本功能了。

來源:知乎,作者:Fadeoc Khaos 授權轉載

相關文章