Github 觀念
Git是分散式管理系統
git不是集中式管理系統,概念不同,須先搞懂。
Repo分專案
clone / fork
專案分枝與合併
master / branch / merge
專案合併管理
push / pull request / code review / merge
Github 權限管理
Branch merge 保護設定(public repo 免費,private repo 要升級)
概念:
每個 Repository 可以加入 Collaborators,但是主要 branch 設定 merge 保護,確保
不被隨便 merge 。
設定 Repository 的 branch protections rule 強制要求需要code review 才能 merge
Setting:
位置 Setting/Branches/Branch Protections Rule
- 增加 Branch Protection Rule apply to 某個 branch,通常是 staging or mater
- 在要設定權限的 branch 加一個 .github 資料夾,裡面新增 CODEOWNERS 檔案。
- branch 設定 required pull request review before merging
- collaborators 發 pull request
- 之後這個 brach 要 merge,都需要 code owner approve pull request
用組織管理權限(免費,可依據各 repo 設定 member 權限)
管理者建立一個組織,然後加入其他人為組織成員
每個成員可設定為組織 member 或 owner
針對 member 可設定加入的 repo,並且可以設定其權限
read, write, admin
在每個 repo 的 Setting/Manage access 裡面
Read: read, clone open comments on issues and pull requests.
Trige: read, clone, manage issue and pull requests.
Write: read, clone, push, manage issue and pull requests.
Maintain: read, clone, push, mange issues, pull requests, setting
Admin: all
沒有留言:
張貼留言