需求:我们要协作完成一个开源项目Conflux的.net SDK。
协作人:3个成员。
我们参考了成熟项目eth的目录体系Nethereum(SDK core code),以及Nethereum.Docs。
所以考虑到将来可能要移交到Conflux社区,因此我注册了Nconflux账号,同样将至少建立Nconflux和Nconflux.Docs两个repo。
一、成员协作模式(Nethereum项目应采用了此模式):
1、登陆Nconflux,创立项目(public和private都可以,只是private不出现在成员账户登陆github后的首页上,要到setting里面去需找)。
2、进入Nconflux项目,选择setting,注意下图对应的各项显示,后面将同组织功能做个比较,存在较大不同。
3、上图左侧,并没有网络上可查见的文档中的Collaborators选项,只有了Manage access。下拉,柳暗花明处,看右边有按钮:invite a collaborator。
4、点击弹出对话框,搜索成员的邮箱地址,下拉菜单会显示该成员的账号。选中,邀请即可。对方从邮箱或者github登陆的消息中,可见到邀请。只需Accept,即可成为项目组的成员。
5、在invite成员时,成员同样可以是组织形式存在的。那么组织中的每一个owner和member,也将是项目组成员,居于访问项目的权限。
二、组织模式创建repo:
1、登陆Nconflux,不着急创建repo,先create一个组织,可以如下图,也可以在页面右上方的“+”菜单里找到创建的按钮。随后是要求选择free或者不同价位的费用。接着是组织信息。组织不能与登陆账号同名,比如Nconflux。为什么不能同名,因为后续组织项目是直接显示在github.com的根下面的。登陆账号也显示在根下面。二者不可以并存。所以回头来看,抢注Nconflux也算是挖了一个大坑。其他信息根据实际要求填写。
上图中已经建立了organization:netConfluxSDK。我们点击这个组织名称,然后选择people,即可进行成员编辑或者邀请新成员。组织内的成员分为两种权限:member和owner。而登陆账号自动是所建组织的Owner之一,其他成员被要邀请时,可以选择给予权限。
2、组织的owner都能在组织框架下创建repo,并进行配置管理。
综上所述,协作成员模式和组织模式,都是可以很好管理repo的。组织形式更有利于成员的增删和权限管理。成员协作更利于账号的灵活管理,比如我们Nconflux可以在项目成熟后,移交社区,不影响我们自己账户的使用。
——当然,如果更早熟悉这一点,我将单独注册一个非Nconflux的账号,创建一个Nconflux组织,然后进行后续的配置管理,是更好的选择。
来源:oschina
链接:https://my.oschina.net/aoems/blog/4314560