轉載請標明出處: html
http://www.cnblogs.com/zhaoyanjun/p/5882784.html git
出自[趙彥軍博客] 2016-09-19github
在上一篇文章中Android github 快速實現多人協做 (http://www.cnblogs.com/zhaoyanjun/p/5829142.html)介紹瞭如何快速的實現多人協做的功能。安全
其優勢是:操做簡單,快速上手。缺點是:沒有辦法實現權限控制。爲啥要權限控制?這是一個蛋疼的問題,由於咱們爲了項目的安全考慮,須要對一部分人開放只讀權限(只能 read、clone) ; 或者對一部分人開放寫權限(只能 read、clone、push) ; 或者對一部分人開放管理者權限(只能 read、clone、push、給倉庫添加成員 )。事實上github對權限的管理只有4種,前三種權限分別是 Admin(管理者)、Write(只寫) 、Read(只讀) 。最後一種權限比較特殊,它是該組織的建立者,擁有至高無上的的權利。服務器
要想弄清楚github權限管理,須要瞭解幾個概念。 organization(組織) 、repository(倉庫)、Team(團隊)。gitlab
在瞭解這些概念以前,先聽我講一個小故事。話說從前有個生意人,因爲他聰明又能幹,他開了水果攤、奶茶店、還有一個網吧。轉眼10年過去了,他積累了不少錢,也有了很牛逼的權利,總的來講就是有錢有勢有人,因而乎有一天他帶領100個兄弟成立一個黑幫組織:青幫。組織成立後,他把100個兄弟分紅4個team, 每一個team 25我的。團隊成立後,兄弟們總不能坐着餓死吧,因而乎他有開了一個ktv 、一個超市、一個足浴大保健。那麼問題就來了,怎麼讓4個team接手這3個項目,要有明確的權限控制,若是權限控制不得當,就會出現自家兄弟互相搶地盤的問題。一個項目可讓多個team管理,一個team能夠管多個項目,因此team和項目之間是多對多的關係。post
生意人所擁有的資產:3個項目:水果攤、奶菜店、網吧。url
1個組織:青幫spa
青幫組織所擁有的資產:3個項目:Ktv、超市、足浴大保健.net
4個team
注意:水果攤、奶菜店、網吧 這三個項目只屬於生意人的資產,不歸任何組織所擁有。那延伸一下,生意人是能夠再次建立一個新的項目,好比一個4s店;同時他也能夠再建立一個新的組織,好比一個洪幫組織。一樣在洪幫組織裏面能夠建立多個team。
如今能夠把思路轉換到github中,對應關係
生意人 --> 你註冊的github帳戶
水果攤 --> repository(倉庫)
青幫 --> organization(組織)
團隊 --> Team(團隊)
在故事中,生意人能夠建立項目和組織。對應到github上的用戶能夠建立倉庫和組織。
完整的實例
當建立完組織後,來看看組織的結構
在Organ-Name 組織下,建立一個倉庫
團隊建立完成後,默認這個團隊的成員只有一我的,就是該帳號。下面就開始給這個team添加其餘成員。
邀請成功之後,須要被邀請人去本身的郵箱點擊一下,確認邀請
能夠看到,倉庫對team的權限控制有三種
另外任意一個Team能夠供多個組織使用,到這裏權限添加已經所有完成了。
一、在github花錢購買私有倉庫。
二、使用國內比較出名的開源中國git託管服務:https://git.oschina.net/
三、使用GitLab,這須要在本身的服務器上部署。傳送門:https://about.gitlab.com/gitlab-com/