一个github账号可以创建多个仓库(repository),也可以创建多个组织(organization),如下图:

本文只讲述组织以及组织内的几个概念:

组织

1:创建组织的界面如下图;Organization account name要全局唯一,因为会通过该账号作为地址的一部分来访问新建的该Organization;通过地址访问Organization示例如下下图:

2:创建好Organization后,可以在Organization内创建Repository,创建Team,并可以invite member到People中;创建好organization后,People内就存在一个member:创建Organization的当前账号。

组织的形象标识如下图:

People

1:People里存放了Organization内的所有member;这些成员可以属于某个Team,也可以不属于Team(我称其为组织内的自由人员)。在People里邀请一个人时的界面如下:

2:设置被邀请者在组织内的角色Role。

Member:仅仅可以看到组织内的其他成员(不能对组织内的其他成员进行操作),会被分配对repository的访问权限;

Owner:对organization拥有所有管理者权限(可以对该组织内的其他成员进行操作),并可以完整的访问所有的repositories和teams。

Owner角色的成员对组织内的其他成员的操作如下图:

(1)Change role:改变选中成员的角色,即改为Owner或者Member。

(2)Convert to outside  collaborator:不知道啥意思?

(3)Remove from organization:从当前组织中移除选中成员。

3:为被邀请者选择团队。

如果勾选了团队,则被邀请者作为团队成员加入组织;

如果不勾选团队,则被邀请者作为组织内的自由人员加入组织。下图的第二个成员就是组织内的自由人员,不属于任何Team。

4:角色和团队都设置好以后,发出邀请;在邀请发出后,被邀请者的邮箱会收到一封邮件,经过被邀请者在邮件内同意后,才会加入到组织中,如果勾选了团队,也会加入到团队中。

结论:member首先属于组织,其次才属于组织内的某个Team,也可以不属于任何Team。

团队

1:创建team时,选择可视性;visible:organization内所有人都可以看到这个team;secret:team内的人才可以看到这个team。

2:创建好团队后,团队里就存在一个member:创建团队的当前账号,该member在Team内的role是Maintainer;还可以邀请别的人进入这个team,一同组成这个Team;其实邀请别人加入Team的过程和在People中邀请别人加入组织的过程是一样的,只不过加入Team的过程是封装好的,默认将Role设置为Member,将Team设置为当前Team。在Team发出邀请后,被邀请者的邮箱会收到一封邮件,经过被邀请者在邮件内同意后,才会加入到Team中,被邀请者加入团队后的role依据被邀请者在组织内的角色来决定。

注意:团队内的member,有个角色,是团队内的角色:Maintainer(团队拥有者)或Member(团队成员);People内包含了组织内的所有member(不管是否属于某个Team),member还有个角色,是组织内的角色:Owner(组织拥有者)和Member(组织成员)。组织内的角色会对团队内的角色造成影响:如果一个member在组织内的角色是Owner,那么他在团队内的角色就是Maintainer;如果member在组织内的角色是Member,那么他在团队内的角色也是Member。

仓库

1:在组织内创建仓库的过程就不再描述;下面描述为organization内的repository分配Teams和Collaborators。

英文部分描述:组织内的所有成员默认对repository拥有read权限。

2:下面可以为repository选择team,并为team分配权限;

3:还可以添加collaborator,并为其分配权限;

添加collaborator时有2种情况:

(1):选择的是organization内的自由人员,则直接可将其添加到Collaborators中。

(2):选择的是和organization没有关系的人,则会给他的邮箱发封邮件,让其点击确认后,才可将其加入到Collaborators中;而且其仅仅是加入到仓库的Collaborators中,并不会成为组织的member。

4:需要为分配给仓库的Teams和Collaborators分配权限,具体的权限如下:

(1)Admin 管理者权限(read、clone、push、设置仓库参数、给仓库添加成员 )

(2)Maintain维护者权限(read、clone、push、设置仓库部分参数)

(3)Write 写权限(read、clone、push)

(4)Read 读权限(read、clone)

需要注意的一点是:

如果组织内的某个成员拥有Owner角色,那么无论该成员是否被分配到仓库的Teams和Collaborators中,他都拥有对仓库的所有权限;因为上面讲过:Owner:对organization拥有所有的管理者权限(可以对该组织内的其他成员进行操作),并可以完整的访问所有的repositories和teams。

总结:

1:组织内可以创建仓库和团队。

2:组织内可以加入member,该member还可以被分配给某个团队。

3:在邀请member时,可以给member分配其在组织内的角色,Owner或者Member。

4:如果member也被分配到了某个团队,其在团队内也有个角色,Maintainer或者Member,但其在团队内的角色受到其在组织内的角色的影响。

5:可以给仓库分配Teams和Collaborators,并设置他们对仓库的访问权限。

6:Collaborators可以来自组织内,也可以来自组织外。

7:如果组织内的某成员拥有Owner角色,那么无论其是否被分配给仓库,他都拥有对仓库的所有权限。

总而言之:就是给github账号分配对仓库的操作权限。

关于github账号创建的仓库(组织外的仓库)的合作者的理解,可以查看《对Github中repository的Collaborators的理解》

对Github中Organization内几个概念的理解相关推荐

  1. GitHub中Organization的Member邀请和clone代码库

    GitHub中Organization的Member邀请和clone代码库 首先邀请成员后在顶端弹出一个网址,需要把那个网址复制给对方,对方才能确认,因为邀请通知不会发给被邀请. 从GitHub上Cl ...

  2. pytorch 中维度(Dimension)概念的理解

    pytorch 中维度(Dimension)概念的理解 Dimension为0(即维度为0时) 维度为0时,即tensor(张量)为标量.例如:神经网络中损失函数的值即为标量. 接下来我们创建一个di ...

  3. 自己对通信系统中的一些参数以及概念的理解

    平时听到很多通信里面的概念,比如带宽,发送速率,信息传输速率等等,自己都没有一个很好的理解,最近找工作看了一些相关的书籍,视频,并自己查阅了一些资料,将自己的心得写下来.欢迎一起讨论,交流,有写的不对 ...

  4. 数据库中Schema(模式)概念的理解

    文章内容来自:https://www.biaodianfu.com/database-schema.html?utm_source=tuicool&utm_medium=referral 在学 ...

  5. 关于机器学习中Precision和Recall的概念的理解

    Andrew Ng 机器学习第六课 关于这个Precision和Recall的概念,我一直不能很好的理解,所以我找了个时间梳理的了一下. - Accuracy = 准确率 预测对的除以总样本数 - ...

  6. 软件工程设计中的“扇入”、“扇出”概念的理解

    扇入:是指直接调用该模块的上级模块的个数.扇入大表示模块的复用程序高.  扇出:是指该模块直接调用的下级模块的个数.扇出大表示模块的复杂度高,需要控制和协调过多的下级模块:但扇出过小(例如总是1)也不 ...

  7. 图解面向对象中的聚合与耦合概念

    图解面向对象中的聚合与耦合概念 简单理解聚合与耦合 在面向对象的设计中,我们经常会听到或用到聚合.耦合的概念.面向对象的目标就是设计出高聚合.低耦合的程序.然而,究竟什么是 聚合.什么是耦合,恐怕每个 ...

  8. go 基准测试 找不到函数_Go 中的内联优化 | Linux 中国

    本文讨论 Go 编译器是如何实现内联的,以及这种优化方法如何影响你的 Go 代码.https://linux.cn/article-12176-1.html作者:Dave Cheney译者:Xiaob ...

  9. 为什么selection.find在word vba中不返回所有结果?_工作表查询中,内连接Inner join的讲解...

    大家好,我们继续讲解VBA数据库解决方案,今日讲解第56讲内容: 数据表查询中,内连接Inner join的讲解.从这讲开始给大家实例讲解在查询中各种连接方式的应用.为什么到现在才讲解这块内容呢?是的 ...

最新文章

  1. ubuntu mysql5.6 编译安装_Ubuntu14.04编译安装mysql5.6.26
  2. iOS开发UI篇—使用UItableview完成一个简单的QQ好友列表(一)
  3. c语言程序执行完main函数后,一个c程序在执行main函数之前和main之后都做了那些事情啊该如何解决...
  4. 关于node.js杂记
  5. java intent 传递集合对象_Android系列之Intent传递对象的几种实例方法
  6. android微信第三方登录怎么通过code获取openid?
  7. SQL Server 2008 R2 性能计数器详细列表(三)
  8. Border属性的各种变化
  9. 7.15 NOIP 2013
  10. 转载——傅里叶变换概念及公式推导
  11. 广东省专科学校列表(附官网地址)
  12. CSS 特异度、继承、求值过程简介
  13. 4000汉字无一重字
  14. ANOVA,T检验,秩和检验
  15. Nginx常用Rewrite(伪静态规则)WordPress/PHPCMS/ECSHOP/ShopEX/SaBlog/Discuz/DiscuzX/PHPWind/Typecho/DEDECMS...
  16. 计算机用户界面的设计,计算机软件用户界面设计的基本原则
  17. windows自带录屏_电脑录屏有哪些快捷键?设置帮助电脑快速录屏
  18. Centos7安装并使用gcc编译器
  19. JMeter元件详解之逻辑控制器
  20. 天猫精灵 python 控制_(二 -3-1) 天猫精灵接入Home Assistant-自动发现Mqtt设备--灯系列 实战...

热门文章

  1. 全栈公开课(深入浅出现代Web编程)学习——Part0-Web 应用的基础设施
  2. 中国的软件流氓行为何时了?搜狐输入法竟然自动下载并要求我安装浏览器!!...
  3. day18-java
  4. 图文解说 linux 安装 nginx
  5. 计算机网络辅助英语写作,计算机网络及课件辅助大学英语写作教学的研究
  6. httprunner 3.x ---Study
  7. 赛门铁克:中国挤掉美国成僵尸电脑超级大国
  8. u盘同步服务器文件,GoodSync配合U盘助你自动同步文件
  9. vue-quill-editor 富文本编辑器 自定义上传图片
  10. 统计复习:伯努利分布、二项分布、几何分布、超几何分布、泊松分布