為什麽說程序員都應該玩一玩GitHub
既熟悉又陌生的GitHub
關於GitHub,相信每一個程序員都再熟悉不過了。它為開發者提供Git倉庫的托管服務,是全世界最大的代碼集中地,被戲稱為“全球最大同性交友網站”。
但是對於很大一部分程序員來說,GitHub卻是一個陌生的地方。我們中有些人可能從來沒有申請過一個賬號,沒有創建過屬於自己的Repository,甚至沒有真的去訪問過這個網站。更不用說要在上面看看有哪些熱門的開源項目,嘗試著為這些項目添磚加瓦。
既然人人都說它好,那它到底好在哪裏?或許,我們應該花點時間重新審視GitHub。
開源社區的作用
講GitHub,就不能不先談到開源社區。
在很長一段時間,項目的源代碼是公司的財產,與商業秘密有關,是封閉和不可能公開的。後來開始有人在互聯網上分享自己寫的代碼,互相討論,逐漸形成了一種特殊的虛擬社區。社區成員大部分都是職業的程序員或編程愛好者,他們根據相應的開源軟件許可證協議公布軟件源代碼,分享源代碼,共同自由學習交流。
GitHub的出現,極大地推進開源社區的發展。在上面,我們可以隨意地下載各種著名開源項目和開源開發框架。例如android系統的源代碼、前端開發的jQuery框架、Spring系列開發框架、MyBatis等等。
玩GitHub至少有以下幾個好處:
- 獲取最新最熱門最實用的開源組件,有助於開發公司項目
- 獲取最流行的技術相關源代碼,有助於參考學習借鑒
- 參與感興趣的開源項目,增強與他人協作開發的能力
- 創建屬於自己的開源項目,提升編程能力,打造個人名片
很多人可能覺得閱讀開源框架的源代碼沒有必要,認為只要會用就行了。其實這是一個非常錯誤的認識。如果不懂這些框架的設計思想,就不可能真的做到根據實際情況選擇最合適的開源組件。如果不了解其實現的技術細節,每次出問題的時候只能是誤打誤撞碰運氣,很難從根本上解決問題。
另外,可能有人覺得自己水平不夠,不願意自己創建新的開源項目,覺得代碼寫得不好還給別人看很丟臉。其實這樣想大可不必。開源社區的出發點本來就是交流學習,只有那些素質低下的人才會總是冷嘲熱諷找存在感。只要你堅持提交代碼,不斷提升自己的水平,很快就可以在簡歷添上你的GitHub主頁地址,告訴他們你是一個有實力的人。
動動手,讓我們開始玩一玩GitHub
講了這麽多GitHub的好處,還是會有很多人只是聽聽而已。不如我們一起來動手,跟GitHub來一次親密接觸。可能有人擔心自己英文不好,看到全英文的界面有點發怵。沒關系,下面的內容會一步一步圖文並茂地講到底要怎麽做,非常簡單,只要一步一步跟著完成就可以了。
第1步:訪問GitHub,申請賬號
打開瀏覽器,在地址欄輸入https://github.com。沒有被墻,不需要科學上網就可以訪問,如果一時打不開就等一會或者多試幾次。
加載完之後會直接顯示申請賬號的頁面,輸入你的用戶名(Uername)、郵箱地址(Email)和登錄密碼之後,點擊Sign up for GitHub按鈕完成申請。賬號申請成功之後,你的郵箱會收到一封驗證郵件,點擊驗證鏈接就可以了。
第2步:搜索特定項目,Fork該項目
有了自己的賬號之後,就可以開始我們的GitHub之旅了。為了讓沒有多少GitHub使用經驗的朋友練手,我特地新建了一個項目。在搜索框裏輸入levenyes/cnblogs後按回車鍵確認搜索,然後點擊如下圖所示的鏈接即可。
打開名稱為coders-list的文件,然後點擊頁面中間編輯圖標,將項目fork到你的主頁。
第3步:編輯特定文件,提交Pull requests
文件內容其實特別簡單。使用過xml的人都能讀懂,<coder>標簽裏面寫你在博客園的用戶名或是最常用的網名,<email>標簽裏面寫郵箱地址。前者必填,後者可以選擇不填。不要刪除原來的內容,根據你的個人信息新增了兩行即可。
1 <coders-list> 2 <coder>levenyes</coder> 3 <email>[email protected]></email> 4 5 <coder>liwenye</coder> 6 </coders-list>
在編輯完成之後點擊Propose file change按鈕,就可以保存修改了。
保存成功之後,你會看到如下頁面。這時候,你只是把修改保存到你的那條分支。如果要合並到我的那條分支,還需要點擊綠色的Create pull request按鈕。
跳轉到以下頁面之後,直接點擊綠色的Create pull request按鈕。
成功之後,你就會看到以下頁面。
做完以上三個步驟的動作,就已經大功告成了。只需要我再處理完你的這個pull request之後,你就可以在我的主分支上看到你修改的最新文件內容。
最後再多說兩句
相信到了這個時候,你就已經不會覺得使用GitHub是一件多麽難的事情。開了這個好頭之後,我們就可以自主地探索更多的玩法,更好地使用GitHub,更好地參與到開源社區當中。
我有一個公眾號,經常會發一些看書思考過後寫的文章。如果你喜歡我的文字,可以用微信搜索“李文業的思考筆記”或者掃描二維碼關註。
為什麽說程序員都應該玩一玩GitHub