今天主要的學習的內容是:
認識 GitHub Repo 的主要功能區塊。
因為GitHub是全英介面,
相信有很多和我一樣英文不是很優秀的邦友,
每次用都嗚煞煞看不懂XDD
所以就決定做一篇最不起眼卻最重要的介面導覽!
瞭解 Issues、Wiki、Insights 的用途,
以及如何在團隊協作時利用這些工具,
所以今天比較偏向圖解 + 功能認識,
比較輕鬆一些~~~
1. Repo 主要功能區塊
進到 GitHub 專案頁面時,
上方會看到幾個常見的頁籤。
我們就來逐一介紹各個功能:
- Code
它是專案的核心區域,
在這裡會顯示所有程式碼、資料夾結構、README.md(說明文件)。
常見操作有瀏覽專案檔案、下載 ZIP、
Clone 倉庫(HTTPS/SSH/GitHub CLI)、建立分支、發 PR
- Pull requests
這裡是協作時提交程式碼的地方,
用來提交代碼修改,請求合併到主分支。
通常都有一套流程:
Fork → 修改 → 提交 Pull Request,
維護者檢視、討論、測試,
通過後 Merge。
這裡可附上 commit 差異(diff),
也可與 CI/CD 自動測試串接。
- Actions
它是GitHub內建的自動化流程(CI/CD)區塊,
可以自動跑測試、
自動部署(例如部署到 GitHub Pages、伺服器),
也可設定定期任務(排程)。
它支援 Workflow 檔 .github/workflows/,
也可直接用 Marketplace 上的現成 Action。
- Projects
這是專案管理工具,
是 GitHub 提供的看板工具,
可以拿來做任務管理,
其支援「待辦 → 進行中 → 完成」的流程。
他最大的特色是可以和 Issues 綁定:
把某個 Issue 加入 Project 看板,就能追蹤進度,
也能自訂欄位,例如「優先度」、「負責人」。
- Wiki
它是文件管理區、知識庫/文件區塊。
主要會用來撰寫專案文件、技術筆記、安裝/使用指南等等。
- Security
這就是俗稱得安全性檢查,
是 GitHub 提供的安全性掃描功能,
幫助你檢查專案是否有漏洞。
功能包含:
Dependabot alerts:檢查相依套件是否有安全漏洞
Dependabot security updates:自動提出 PR 升級有問題的套件
Code scanning alerts:靜態分析程式碼,找出潛在風險
Secret scanning:檢查有沒有不小心把 API key / 密碼 push 上來
- Insights
這個區塊是專案統計資料,統計分析與數據。
功能內容有:
Pulse:近期活動摘要
Contributors:貢獻者統計
Traffic:瀏覽量 / Clone 次數
Dependency graph:依賴套件
Commits 活躍度
- Settings
這是最熟悉且最重要的功能!!!
倉庫管理與設定。
重點:
修改倉庫名稱、描述、公開/私有、
權限與協作者設定、
Branch 保護規則、
啟用 GitHub Pages、
Webhooks 與整合設定、
刪除或轉移 Repo
2. Issues:任務追蹤與 Bug 管理
這個是Issues的介面,
我們可以把 Bug、功能需求、待辦事項都記錄在這裡!!
就是一個記事本或是代辦清單的概念啦~
我們就來玩一下這個酷東西,
建立一個 Issue,標題打
「Fix typo in README.md」。
然後加上 Label「bug」或「documentation」,
就可以標示說這是哪一類型的問題。
當然還有很多其他內容,
這裡就不逐一介紹,留給各位邦友自行摸索囉~~
3. Wiki:專案文件中心
這裡特別介紹wiki區塊,
這是可以在專案內建立 Wiki 頁面,
適合放專案介紹、架構圖、安裝教學、使用手冊,
支援 Markdown,排版簡單又清晰,
適合比 README 更詳細的內容!!
總之就當成寫使用說明書就對了~~
我們可以試寫一篇 Wiki 內容:
它還可以新增頁面喔,
這樣就可以針對特別的部分做一篇說明,
也不會和其他的搞混,超方便的!!
4. Insights:專案統計資料
最後我們來看這個區塊!
首先 Pulse的部分是可以查看專案最近的活動狀況
這邊還能檢視我們剛剛設置的issues,
這樣就可以檢查還有哪些還沒被解決~
Contributors的部分是可以看誰提交了多少程式碼,
因為現在只有我自己做,所以就只看的到我的提交紀錄了XDD
Community是查看專案社群狀況(有沒有 README、License、Code of Conduct)
Traffic是查看 Repo 被瀏覽或下載的次數(私有 Repo 也能看),
很適合用來檢視開源專案的活躍度!
當然還有太多功能介紹不完QQ
這邊就先介紹幾個基礎常用的,
大家有其他感興趣的歡迎善用其他網路資源~~~
也希望這篇的內容可以讓初學者們有基礎認識!