1. 程式人生 > >GitHub 實現多人協同提交程式碼並且許可權分組管理

GitHub 實現多人協同提交程式碼並且許可權分組管理

前言:

在上一篇文章中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(團隊

在瞭解這些概念之前,先聽我講一個小故事。話說從前有個生意人,由於他聰明又能幹,他開了水果攤、奶茶店、還有一個網咖。轉眼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可以供多個組織使用,到這裡許可權新增已經全部完成了。

總結

  • 通過這篇文章可以在github愉快的使用許可權管理了,但是github不能免費的建立私有倉庫,這是一個很嚴重的問題。如果是開源專案,用github完全沒有問題。如果是私有專案,可以有以下幾個途徑達到要求

        1、在github花錢購買私有倉庫。

相關推薦

GitHub 實現協同提交程式碼並且許可權分組管理

前言: 在上一篇文章中Android github 快速實現多人協作 (http://www.cnblogs.com/zhaoyanjun/p/5829142.html)介紹瞭如何快速的實現多人協作的功能。 其優點是:操作簡單,快速上手。缺點是:沒有辦法實現許可權控制。為啥要許可權控制?這是一個蛋

gitlab實現協同

1.註冊登陸gitlab官網,配置個人資訊 可以選擇github賬號登陸,登陸成功在個人中心設定SSH金鑰(很關鍵),設定密碼 設定成功後,新增一個project 2.建立專案 建立成功,進入專案介面 這裡,可以建立新分支,可以和你的小夥伴們協同

GitHub協同開發配置

  基本的註冊登入就不細講了.   在原始碼管理上,最重要的就是倉庫了.倉庫這一概念很容易理解,所謂倉庫,就是存放東西的地方,因為倉庫就是我們存放原始碼的地方.   下載安裝好GitHub之後,在左上角就用一個+符號,通過這個就可以完成倉庫的建立和遷出.然後右鍵該

idea中github協同工作截圖篇(篇幅較長,圖預警)

1.目標: - 組長 完成idea上GitHub賬號的登陸 在idea上新建遠端倉庫 在GitHub上建立組織 在遠端倉庫關聯組織,新增team 給team分發許可權 - 組員 讓team中其他成員可以clone倉庫程式

Git詳解 三( 協同開發 ,程式碼衝突)

多人協同開發 1.程式碼編輯介面介紹:此處使用gedit做演示 程式碼編輯介面左邊為模擬經理的操作 程式碼編輯介面右邊為模擬張三的操作 2.模擬張三先編輯login.py檔案程式碼 進入張三本地倉庫:cd Desktop/zhangsan/tes

Android github 快速實現協作

前言:最近要做github多人協作,也就是多人開發。搜尋了一些資料,千篇一律,而且操作麻煩。今天就整理一下,github多人協作的簡單實現方法。  下面的教程不會出現:公鑰、組織、team、pull request 1、首先小張在github上建立一個倉庫,比如叫做: GlideDemo     

GitHub開發一個項目

github上 工具 andro itl lac 知識庫 clas color 寫代碼 首先我們要簡單知道github跟Git的區別。git是版本控制工具, github是一個面向開源及私有軟件項目的托管平臺,也是程序員交流的地方。 接下來就開始講怎麽多人一起開發

使用Gateway-Worker實現分組實時聊天 結合第三方tp

geb wid 監聽 快速 多人 app 綁定 %20 發送數據 一、基礎知識1、Workerman是一款純PHP開發的開源高性能的PHP socket 服務器框架。被廣泛的用於手機app、移動通訊等領域的開發。 支持TCP長連接,支持Websocket、HTTP等協議,支

Office 365實現在線編輯同一個文檔(下)

雲計算 雲服務 接下來我要實現多人編輯同一個Excel文件,這裏以Source.xlsx為例,右鍵選擇共享 設置共享權限以及共享給誰 權限有如下,如果是發送給別人看,就選擇任何人(可向收到此鏈接的任何人授予訪問權限,無論他們是直接收到你的鏈接到還是收到其他人轉發的鏈接。這可能包括組織外部的人員),

Office 365實現在線編輯同一個文檔(中)

雲計算 雲服務 我編輯下這個Excel錄入一些數據,如下 我點擊文件保存,可以選擇直接保存到OneDrive也可以選擇保存到本地計算機上,這裏我選擇保存到OneDrive裏 輸入文件名稱點擊保存 如果要保存到本地計算機位置,請點擊“這臺電腦” 保存好以後,可以在網頁版中登錄自己的Office

Vue+Websocket實現在線王者飛機(一)

Vue requestAnimationFra 飛機大戰 WebSocket 看了Vue官方教程(貌似和自己寫的框架差別不大,聽前前端同事一直吹Vue,於是學習了一下,和自己寫的框架好像也沒強哪裏去嘛,就是要傲嬌哈哈),等有空也整理自己的框架,開源好了),想找個項目練練手(沒找到好的),就寫個

Gitlab教程2 —— 協同工作(清晰)

onf 我們 track ron 分享圖片 自動創建 默認值 產生 文本 gitlab使用 —— 多人協同工作(重要技能) 學習鏈接: http://herry2013git.blog.163.com/blog/static/21956801120134111124075

1024_(即時通訊)使用node.js和socket.io實現聊天室

使用node.js和socket.io實現多人聊天室 2015年01月24日 03:24:54 遠古大猛獁 閱讀數:2775 轉自: http://www.cnblogs.com/flyoung2008/archive/2012/07/19/2600132.html

如何利用 Git 與 GitHub 進行協作開發

1. 首先 “Fork” 他人的 repository(程式碼倉庫)        “Fork” 的名詞是 “叉子” 的意思,不過這裡取的是動詞 “分叉,建一個分支” 的意思。進入你想參與合作開發的倉庫介面,點選右上角的 “Fork” 

Github設定合作

1.第一種方式:Collaborators Collaborators適用於一個team之間的合作。 負責開這個repository的人,進入settings,加入collaborators的帳號 這樣所有collaborators名單中的人,在git push的時候,可以輸入自己的帳密,而不是擁有

公眾號支付協同開發,請求分發怎麼做

1.為什麼需要將流量分發 在做微信公眾號支付的時候,所有的支付操作都必須在設定的支付授權目錄下進行,而且支付授權目錄只能設定一個。如果多個開發人員一起做開發的話,不可能每個人都去開通一個公眾號去繫結支付授權目錄去除錯,只能是多個開發人員共用一個公眾號,共用一個

基於flask框架,使用websocket實現聊天室功能

後端程式碼:   # web_socket 的收發機制 # web_socket --> web + socket --> http協議 + socket # web_socket協議就是ws協議 # 基於flask框架為web_socket提供服務 from flas

Android端實現音視訊聊天應用(一)

本文轉載於資深Android開發者“東風玖哥”的部落格。 本系列文章分享了基於Agora SDK 2.1實現多人視訊通話的實踐經驗。 轉載已經過原作者許可。原文地址 自從2016年,鼓吹“網際網路寒冬”的論調甚囂塵上,2017年亦有愈演愈烈之勢。但連麥直播、線上抓娃

java 網路編輯實現聊天

java 網路編輯實現多人聊天。 1、網路程式設計主要是指完成C/S程式的開發,程式的開發結構有兩種: C/S(客戶端/伺服器),開發兩套程式,兩套程式需要同時維護。 B/S(瀏覽器/伺服器),開發一套程式,客戶端使用瀏覽器進行訪問。 2、C/S程式主要可

gitlab 協同工作

Gitlab多人協同工作 Master & Developer目錄  開發前準備  開發中過程  Developer操作說明  Master操作說明  附錄(Gitlab基本操作)開發前準備開發前準備 Gitlab多人協同工作,所有開發者會被新增進一個共同