從使用者變成貢獻者 — Open Source & Best Practices
最後一單元:學會參與開源、把 repo 養成專業水準,並認識 gh 命令列與安全。
Fork = 把別人的 repo「複製一份到你的帳號」,你就可以隨意改。 之後可以(1)自己用,或(2)發起 Pull Request 把改動貢獻回原專案。
1. 瀏覽某 repo → 右上角 Fork 2. clone 你的 fork 到本機 git clone https://github.com/你/原repo.git 3. 加上游 remote(原專案) git remote add upstream https://github.com/原作者/原repo.git 4. 開分支 → 改 → push → 開 PR(原 repo 的「New pull request」)
git fetch upstream && git merge upstream/main,
把原專案最新進度同步進來,避免 PR 衝突。
good first issue 或 help wanted 的專案(單元 5)。沒有 LICENSE 的 repo,法律上別人不能合法使用你的程式碼。開源專案一定要放。
| 授權 | 特點 |
|---|---|
| MIT | 最寬鬆:幾乎隨你用,附授權聲明即可 |
| Apache-2.0 | 寬鬆 + 專利授權保障 |
| GPL-3.0 | 改作也必須開源(copyleft) |
| CC-BY-4.0 | 內容/文件用(本站就是用這個) |
本站四個教學站的內容授權都是 CC-BY-4.0。
整個 GitHub 都能在終端機操作,寫指令時超方便:
gh auth login # 登入 gh repo create my-site --public --source=. --push gh repo clone owner/repo gh issue list # 列出 issues gh issue create --title "..." --body "..." gh pr create --fill # 開 PR gh pr checkout 123 # 切到某 PR 的分支
| 做法 | 說明 |
|---|---|
| Secrets 用 GitHub Secrets | 不寫進 repo(單元 7) |
| Dependabot | 自動掃描相依套件漏洞並開 PR 修復 |
| Code scanning | 內建弱點掃描(可用 CodeQL) |
| 簽署 commit | 用 GPG/SSH 簽名,證明是你提交的 |
| 保護分支 | 強制 PR + review + CI(單元 4、7) |
| Secret scanning | GitHub 主動掃描洩漏的 Token 並通知 |
git filter-repo),最後通知 GitHub support。
github-tech-zh-tw),
修一個錯字或加一段內容,再開一個 PR 回來——完成你的第一次開源貢獻!