正文:
要想弄清楚github權限管理,需要了解幾個概念。 organization(組織) 、repository(倉庫)、Team(團隊)。
在瞭解這些概念之前,先聽我講一個小故事。話說從前有個生意人,由於他聰明又能幹,他開了水果攤、奶茶店、還有一個網吧。轉眼10年過去了,他積累了很多錢,也有了很牛逼的權利,總的來說就是有錢有勢有人,於是乎有一天他帶領100個兄弟成立一個黑幫組織:青幫。組織成立後,他把100個兄弟分成4個team, 每個team 25個人。團隊成立後,兄弟們總不能坐着餓死吧,於是乎他有開了一個ktv 、一個超市、一個足浴大保健。那麼問題就來了,怎麼讓4個team接手這3個項目,要有明確的權限控制,如果權限控制不得當,就會出現自家兄弟互相搶地盤的問題。一個項目可以讓多個team管理,一個team可以管多個項目,所以team和項目之間是多對多的關係。
- 小故事的中的角色資產分析
生意人所擁有的資產:3個項目:水果攤、奶菜店、網吧。
1個組織:青幫
青幫組織所擁有的資產:3個項目:Ktv、超市、足浴大保健
4個team
注意:水果攤、奶菜店、網吧 這三個項目只屬於生意人的資產,不歸任何組織所擁有。那延伸一下,生意人是可以再次創建一個新的項目,比如一個4s店;同時他也可以再創建一個新的組織,比如一個洪幫組織。同樣在洪幫組織裏面可以創建多個team。
現在可以把思路轉換到github中,對應關係
生意人 --> 你註冊的github賬戶
水果攤 --> repository(倉庫)
青幫 --> organization(組織)
團隊 --> Team(團隊)
1、github實戰--創建組織
在故事中,生意人可以創建項目和組織。對應到github上的用戶可以創建倉庫和組織。
完整的實例
2、github實戰--在組織中創建倉庫
當創建完組織後,來看看組織的結構
在Organ-Name 組織下,創建一個倉庫
3、github實戰--在組織中創建team
團隊創建完成後,默認這個團隊的成員只有一個人,就是該賬號。下面就開始給這個team添加其他成員。
邀請成功以後,需要被邀請人去自己的郵箱點擊一下,確認邀請
4、github實戰--在組織中給倉庫添加team並且設置權限。
可以看到,倉庫對team的權限控制有三種
- Admin 管理者權限(只能 read、clone、push、給倉庫添加成員 )
- Write 寫權限(只能 read、clone、push)
- Read 讀權限(只能 read、clone)
另外任意一個Team可以供多個組織使用,到這裏權限添加已經全部完成了。