日期: 2016-7-25

内容:

尊重原创: 本文转载至: http://www.cnblogs.com/haore147/p/4219673.html

2015-01-12 20:32 by 慧可, 3692 阅读, 0 评论, 收藏, 编辑

4.3. 组织和团队

GitHub 在早期没有专门为组织提供账号,很多企业用户或大型开源组织只好使用普通用户账号作为组织的共享账号来使用。后来,GitHub推出了组织这一新的账号管理模式,满足大型开发团队的需要。

  • 组织账号是不能用来登录的,它包含一个Owner(拥有者)用户组,只有属于这个组的用户在登录后,才能切换为组织的管理者。
  • 可以创建任意多的团队(Team)即角色,对属于组织的用户进行管理。Owner Team就是组织中权限最高的角色。
  • 组织和用户一样可以创建项目,但是组织没有SSH公钥配置,也不能以组织的身份操作版本库。
  • 组织没有工作描述之类的个人账号才拥有的属性。

4.3.1. 创建新组织

组织是非登录账号,不能像创建普通登录账号那样直接创建,而是需要以GitHub用户身份登录,然后再创建自己的组织,创建者成为组织天然的管理者。

图4-26就是用户gotgithub登录后,通过点击右上角的账号设置图标进入账号设置界面,然后再点击菜单中的“Organizations”进入组织管理界面。

图4-26:账号设置中的组织管理

在初始的组织管理界面中组织列表为空,即尚不属于任何组织。可以选择把当前用户gotgithub的账号转换为一个组织账号(前提是gotgithub的账号不属于任何组织)。提供这一账号迁移功能是因为在GitHub提供组织这一新功能之前,很多公司或团队以个人身份创建GitHub账号,但是以组织的形象出现,对于这类账号,GitHub提供了由个人账号向组织账号迁移的途径。

在这里我们不进行这一迁移,而是以用户gotgithub的身份创建一个新的组织。点击“Create New Organization”按钮,显示创建组织表单,如图4-27所示。

图4-27:创建新组织

这里填写组织名为 GotGitOrg。创建组织还要选择一个付费方案,默认会选择免费的没有私有版本库的开源方案。

接下来为新建组织设定拥有者(Owner),如图4-28所示。当前用户,即正在创建组织的用户,理所当然成为组织拥有者之一。还可以为组织指派更多的组织拥有者,多个组织拥有者的权限并无差别,都可以管理组织,甚至可以将其他用户从拥有者团队中删除。

图4-28:指派组织拥有者

完成创建后,访问用户账号设置界面中的组织面板,如图4-29所示,列出当前用户所属的组织(GotGitOrg)。可以重新对组织进行设定,或者退出组织。注意因为当前用户已经属于一个以上的组织,所以右侧将当前用户转换为组织的按钮被置灰。

图4-29:加入组织后的组织管理界面

4.3.2. 组织管理

当用户gotgithub成为新建组织GotGitOrg的一员后,就可以在用户和组织的界面之间切换。点击页面左上角“github”文字图标进入仪表板界面。

图4-30:用户仪表板界面

仪表板页面左上角“github”文字图标的下面就是用户上下文列表框。点击用户上下文下拉列表,如图4-31所示。

图4-31:用户上下文切换列表

在用户上下文列表中选择组织GotGitOrg作为用户上下文后,则仪表板中显示的菜单和个人账号仪表板菜单略有不同,如图4-32所示。

图4-32:组织GotGitOrg的仪表板界面

组织的仪表板界面与用户仪表板的不同之处在于增加了团队管理(Team)和组织管理(Organization Settings)。选择菜单中的“Team”进入团队管理界面,可以在组织中添加任意数量的团队。添加新团队的界面如图4-33所示。

图4-33:添加新团队iOS-Team

创建一个团队需要提供四个选项(如图4-33):

  1. 团队名称。如:iOS-Team。
  2. 团队成员。如:supergirl和omnidroid两个用户作为团队成员。
  3. 团队权限。有三个选择:只读(Pull Only)、读写(Push & Pull)、读写并管理(Push, Pull & Administrative)。
  4. 授权版本库。可以添加一个或多个版本库,只有对授权的版本库才拥有指定权限。

其中团队授权中的只读授权对于免费组织账号创建的开源项目没有实际意义,因为开源项目人人可读,只有对于付费的组织账号创建的私密版本库才体现出价值。关于付费账号和私密版本库将在后面的章节介绍。接下来介绍如何在组织账号下创建版本库。

4.3.3. 版本库管理

组织拥有独立的项目托管空间,点击页面左上角的“github”文字图标进入组织账号的仪表板界面。刚刚建立的组织账号的版本库尚未创建,点击图4-32所示的“New Repository”按钮,创建版本库(即项目)。

新建版本库的界面如图4-34所示。

图4-34:新建项目界面

在组织的托管空间创建项目与在普通用户的空间下创建稍有不同,增加了团队设置下拉框。图4-34显示在创建名为MyiPad项目时,只能为项目指派一个已定义团队,要想为项目指派更多团队可以在项目创建完毕通过项目管理界面添加。

下面来看一看如何为已建立项目指派更多的团队。进入项目管理页面,点击左侧菜单项“Team”显示项目的团队管理界面,可以通过该界面,为项目添加和移除团队,如图4-35所示。

图4-35:项目的团队管理

属于团队的项目(版本库)可以转移给个人,反之亦然。图4-36展示了如何通过项目管理界面在用户和组织之间转移项目(版本库)。

图4-36:项目转移

4.3.4. 个人还是组织

若使用“Fork + Pull”的工作模式,通过个人账号还是组织账号托管版本库,几乎没有什么差别。如果一定要找出点不同,那就是在向托管版本库提交Pull Request时,邮件通知的用户范围有所不同。

  • 对于个人账号,对其托管空间内的版本库发出Pull Request,通知邮件会发送给该个人账号及该版本库设置的所有协作者(如果有的话)的邮箱。
  • 对于组织,对其托管空间内的版本库发出Pull Request,不会向组织的邮箱发送Pull Request,也不会向组织的所有者(Owner团队)发送通知邮件,而是向在版本库中拥有Push权限的团队(非Owner团队)成员发送通知邮件。

因此,如果在组织的托管空间创建版本库,一定要要为版本库指派一个拥有Push权限的团队,以免以“Fork + Pull”模式工作时,Pull Request没有人响应。

若是以共享版本库方式(即集中式协同模式)工作的话,使用组织来托管版本库会比使用个人账号托管有效率得多。

  • 以个人账号托管,需要逐一为版本库设置协作者(Collaborators),如果版本库较多且授权相同,配置过程繁琐且易出错。
  • 以组织方式托管,将用户分组,划分为一个一个的团队(Team),以团队为单位授权则方便得多。
  • 如果是以付费账号创建的私密版本库,使用组织方式管理,会有包括只读、读写等更丰富的授权类型,更符合项目管理的实际。


如何在github上创建组织并对组织进行管理和团队协作开发项目相关推荐

  1. 关于如何在github上创建团队开发环境

    今天想写个如何在github上创建团队开发环境的博客.送给那些还不知道如何在github上创建团队开发环境的开发人员. 1.首先,当然你要有个github的账号.具体怎么注册我这里就不说了.可以上gi ...

  2. 如何在GitHub上创建自己的仓库?

    大家好,我是柒星 接着上一节GitHub的内容,这篇我们讲如何在GitHub上创建自己的仓库!废话不多说,我们直接上干货!!!以下文章来自公众号[Honker],可在公众号内查看学习资料,领取更多Gi ...

  3. 如何在 GitHub 上创建新的空白分支

    请访问原文链接:https://sysin.org/blog/creat-blank-branch-on-github/,查看最新版.原创作品,转载请保留出处. 作者:gc(at)sysin.org, ...

  4. 如何在Github上创建可访问的静态网站

    1.首先在 https://github.com  上注册一个账号(没有账号肯定是不行的). 2.登陆你的账号新建一个项目(如下图) 2.1.新建项目的注意事项: 3.进入项目设置 3.1.把项目推送 ...

  5. GitHub协作开发项目

    文章目录 1 了解GitHub flow 1.1 创建分支(Create a branch) 1.2 添加提交 (Add commits) 1.3 提出请求 (Open a Pull Request) ...

  6. 如何在GitHub上收集Star?

    https://www.zhihu.com/question/23748804 # 0 链接:https://www.zhihu.com/question/23748804/answer/121413 ...

  7. 如何在github上fork一个项目来贡献代码以及同步原作者的修改

    如何在github上fork一个项目来贡献代码以及同步原作者的修改 作为一个IT人,通过github进行学习是最快的成长手段.我们可以浏览别人的优秀代码.但只看不动手还是成长得很慢,因此为别人贡献代码 ...

  8. github 生产环境_如何在GitHub上提高生产力

    github 生产环境 by Darren Burns 达伦·伯恩斯(Darren Burns) 如何在GitHub上提高生产力 (How to be more productive on GitHu ...

  9. 如何在Github上找到“最受欢迎的存储库”? [关闭]

    本文翻译自:How to find out "The most popular repositories" on Github? [closed] Once upon a time ...

最新文章

  1. Win7旗舰版安装Oracle_11gR1_database
  2. 科目三电子路考细节部分
  3. sklearn机器学习实例
  4. 求两条轨迹间的hausdorff距离_题型 | 圆上有n个点到直线距离为d?
  5. 深入理解Redis分布式锁
  6. linux切换软件版本,使用Linux的alternatives命令替换选择软件的版本方法
  7. 2019运输科技领域最新SCI期刊影响因子正式发布,附三年IF变化趋势!
  8. 【MATLAB】从文件读取:xlsread、load
  9. 手机里舍不得删的48条短信
  10. 7.20-7.22作业代码
  11. Mezzanine入门
  12. android obb在哪,未解决:Android 使用obb步骤
  13. OSChina 周五乱弹 ——下完雨朕的江山都湿了
  14. 麻雀要革命 第柒战 惨败!四面楚歌的凄凉绝境 第五节
  15. 光纤信号衰减的原理及分析
  16. 新书首发 | 人工智能有可能统治地球吗?
  17. 64位系统魔兽服务器不兼容,win10系统64位系统无法玩魔兽的具体技巧
  18. 涂鸦智能2021年Q1营收5690万美元:亏损规模扩大,已跌破发行价
  19. Java是一门什么样的语言?
  20. neosmart linux 光标,重装windows系统后原有的linux系统无法进入的解决办法。

热门文章

  1. 【Linux】循序渐进学运维-服务篇-rysnc安装及使用
  2. axios拦截器应用场景
  3. .net怎么读_0606推文论穿成团宠文中攻二的合约情人/被总裁看上了怎么办
  4. 模拟usb设备_今天写代码遇到Flutter没有连接设备问题解决
  5. IOS,ANDROID,.NET通用AES加密算法
  6. 读《十亿美金的教训》后感
  7. python关键词排名_Python百度seo排名查询,关键词排名查询优化版
  8. Python常用方法对比---replace() split()
  9. maya Arnold灯光参数降噪技巧
  10. Kubernetes踩坑记---单点集群安装