本系列文章有參加 2021 iThome 鐵人賽,同步發在自己的部落格,未來更新也會以自己的部落格為主
文章主要以下列 6 個主軸,完整介紹 GitHub 平台
GitHub 是什麼?
Github 是一個透過協同合作方式的軟體開發平台,它提供了問題討論、版本控管、持續整合與持續部屬…等功能,讓團隊成員以撰寫程式或文件進而幫助人們解決問題。您可以在上面的開源專案給予建議、舉報錯誤、提出問題或提供解決方法,貢獻心力給開源專案,協助有需要的人們解決他們的問題。
在 Github 上有大量的開源專案與程式碼範例,對於軟體開發的世界貢獻甚鉅。我自己也常透過 GitHub 觀摩別人的專案,藉此學習並增進自己的技術能力,也期許自己能多些貢獻於開源專案
GitHub 也提供一個輕量級、以分支為基礎的工作流程 - Github workflow,主要用來支援定期更新的團隊或專案。主要整體流程如下:
- 建立 Branch
- 加入 Commit
- 開啟 Pull Request (向開源專案提交貢獻的方法)
- Code Review
- 合併前部署 (確認可以正常運作)
- Merge
無論是公開或您的私有的專案,你皆可以 Forks 或 Create Branch 來修改程式碼內容,透過 Pull Request 機制與團隊成員進行討論,通過審核後即可合併 Main Branch,達到修復問題或更新功能的目的。所有的討論皆會在歷史紀錄,除了提供團隊成員審閱,也可以讓有興趣或有相同問題的朋友參考。
GitHub 主要提供的功能如下,若您是一位 Github 使用者,應該對下列所列功能不陌生;若您是第一次使用,別擔心,後續文章將建立一個新的儲存庫 (repository),逐一地使用並介紹這些功能。
Repository,文章會簡稱 Repo,翻譯為儲存庫或存放庫,GitHub 幾乎所有功能都圍繞著 Repository,文章會簡稱
- Issues
- Discussions
- Pull requests
- Notifications
- Labels
- Actions
- Forks
- Projects
- Security
GitHub 費用說明
基本使用 Github 是不需費用,除了有額外的需求,可以付費取得更多功能,費用如下圖所示: 官方價格連結
由上圖可以看到,在免費方案中,可以無限制數量的 public 與 private repositories、2000 分鐘自動化時數 (公開專案免費)、500 MB Package storage (公開專案免費)…等,可以說是非常的佛心,遠勝於許多家的 CI/CD 工具,對於一般開發人員來說,已經足夠使用。
若您相當注重安全性與 Pull Reuqest 的品質,每個月約 4美金,即可享有分支保護、在 pull request 多個審閱者、Page 與 wiki 等功能,這些強化功能可以大幅提升你的專案品質。對於企業用戶,理所當然也依據企業需求,也提供更多安全性的功能。
開始申請 GitHub 帳號吧 !!
申請一個 Github 帳號:點選 GitHub 網站,點選右上 Sign Up 按鈕,隨著酷炫的介面開始註冊吧 !! (僅提供參考圖,後續流程不贅述,請自行依據畫面指引註冊)
建議您註冊後,開啟 MFA 機制以強化你的帳號安全 (後續文章會提到如何啟用 MFA 機制)
完成了註冊,點選右上角圖旁的下拉按鈕,點選 your profile,即可看見本身相關資訊。
您點選左邊選單中 Edit Profile 連結,加上個人相關資訊並換上照片,讓你的帳號更完整。
很多公司會將 GitHub 視為履歷的一部分,建議可以發展自己的 GitHub 帳號
總結
經過這篇文章,你應該了解
- GitHub 是一個透過協同合作方式的軟體開發平台
- 提供輕量級的工作流程 GitHub workfolw
- GitHub 提供那些功能
- 了解收費機制與相對應的功能
- 已經註冊 GitHub 帳號
- 嘗試編輯個人基本資料