iT邦幫忙

2021 iThome 鐵人賽

DAY 1
3
DevOps

不僅是程式碼代管平台 - Github 能做些什麼?系列 第 1

什麼是 Github? 開發人員不能不知道的協同合作平台

本篇文章同步發佈於個人部落格 (後續更新皆會以部落格為主):
什麼是 Github?


本系列文章會以下列 6 個主軸,逐一介紹 GitHub 平台

https://ithelp.ithome.com.tw/upload/images/20210903/20091494oTHV4eDHqO.jpg


Github 是一個透過協同合作方式的軟體開發平台,它提供了問題討論、版本控管、持續整合與持續部屬…等功能,讓團隊成員以撰寫程式或文件進而幫助人們解決問題。您可以在上面的開源專案給予建議、舉報錯誤、提出問題或提供解決方法,貢獻心力給開源專案,協助有需要的人們解決他們的問題。

在 Github 上有數不清的開源專案與程式碼範例,對於軟體開發世界貢獻甚鉅。自己常常透過 GitHub 觀摩別人的專案以增進自己的技術能力,也期許自己能多些貢獻於開源專案

GitHub 也提供一個輕量級、以分支為基礎的工作流程 - Github workflow,主要用來支援定期更新的團隊或專案。主要整體流程如下:

https://ithelp.ithome.com.tw/upload/images/20210901/20091494ssNvBGUdZj.png

  1. 建立 Branch
  2. 加入 Commit
  3. 開啟 Pull Request (向開源專案提交貢獻的方法)
  4. Code Review
  5. 合併前部署 (確認可以正常運作)
  6. Merge

無論是公開或您的私有的專案,你皆可以 Forks 或 Create Branch 來修改程式碼內容,透過 Pull Request 機制與團隊成員進行討論,通過審核後即可合併 Main Branch,達到修復問題或更新功能的目的。所有的討論皆會在歷史紀錄,除了提供團隊成員審閱,也可以讓有興趣或有相同問題的朋友參考。


GitHub 主要提供的功能如下,若您是一位 Github 使用者,應該對下列所列功能不陌生;若您是第一次使用,別擔心,後續文章將建立一個新的儲存庫 (repository),逐一地使用並介紹這些功能。

  • Issues
  • Discussions
  • Pull requests
  • Notifications
  • Labels
  • Actions
  • Forks
  • Projects
  • Security

基本使用 Github 是不需費用,除了有額外的需求,可以付費取得更多功能,費用如下圖所示:
官方價格連結

https://ithelp.ithome.com.tw/upload/images/20210901/200914945a5MxScgF1.png

由上圖可以看到,在免費方案中,可以無限制數量的 public 與 private repositories、2000 分鐘自動化時數 (公開專案免費)、500 MB Package storage (公開專案免費)...等,可以說是非常的佛心,遠勝於許多家的 CI/CD 工具,對於一般開發人員來說,已經足夠使用。

若您相當注重安全性與 Pull Reuqest 的品質,每個月約 4美金,即可享有分支保護、在 pull request 多個審閱者、Page 與 wiki 等功能,這些強化功能可以大幅提升你的專案品質。對於企業用戶,理所當然也依據企業需求,也提供更多安全性的功能。


建議您可以申請一個 Github 帳號:點選 GitHub 網站,點選右上 Sign Up 按鈕,隨著酷炫的介面開始註冊吧(僅提供參考圖,後續流程不贅述,請自行依據畫面指引註冊)

建議您註冊後,開啟 MFA 機制以強化你的帳號安全 (後續文章會提到如何啟用 MFA 機制)

https://ithelp.ithome.com.tw/upload/images/20210901/20091494P2jbDqawQY.png

https://ithelp.ithome.com.tw/upload/images/20210901/20091494MnwVLGukG2.png

完成了註冊,點選右上角圖旁的下拉按鈕,點選 your profile,即可看見本身相關資訊。

https://ithelp.ithome.com.tw/upload/images/20210901/20091494ibDeyHAbZs.png

你可以點選左邊 Edit Profile,輸入個人資訊與換上照片,讓你的帳號更完整

https://ithelp.ithome.com.tw/upload/images/20210901/20091494AuMUH8wEuv.png


經過這篇文章,你應該了解

  1. GitHub 是一個透過協同合作方式的軟體開發平台
  2. 提供輕量級的工作流程 GitHub workfolw
  3. GitHub 提供那些功能
  4. 收費機制與相對應的功能
  5. 註冊 GitHub 帳號
  6. 編輯個人基本資料

接下來,在下一篇文章會開始介紹 GitHub 操作介面...


下一篇
GitHub 操作介面介紹 - 讓初學者輕鬆上手
系列文
不僅是程式碼代管平台 - Github 能做些什麼?30

尚未有邦友留言

立即登入留言