GitLab or Giogs使用规范

使用Gitlabopen in new window私服托管代码仓库。

or

使用gogsopen in new window私服托管代码仓库。

账号设置

为方便协作开发,制定以下规则:

信息填写字段规则
姓名Full name真实姓名(中文)张三
用户名User name姓名全拼_工号/公司域账号zhangsan_17070022
邮箱Email企业个人邮箱zhangsan@companymail.com
头像Avatar请设置具有个人标志的头像-

本地需配置用户名和邮箱,作为提交时的用户信息:

git config --global user.name zhangsan_工号
git config --global user.email zhangsan@companymail.com
1
2

方便进行查阅,以及团队代码提交量和贡献度统计。

项目分类

  • 企业项目:存放企业项目,企业项目必须存放在项目组群组中;
  • 个人项目:存放个人项目,个人实验性项目或个人开发的工具性项目。

仓库管理

层级

群组

以项目为第一维度,建立群组(Group)。托管所有该项目(或生态)的代码,包括关联项目(以子群组形式)、前端、后端、移动端等。

子群组

  1. 如果根群组是一个生态概念,那么生态下的关联项目以子群组形式存放;
  2. 如果根群组是一个项目,子群组为前后端分组直接项目仓库

命名

群组命名

群组名以项目英文名或英文缩写为标准(缩写时应使用大写字母),多个英文单词之间用连字符 - 连接。例:alibaba-taobao,CTP。

子群组命名

  1. 如果根群组是一个生态概念,子群组为关联项目,子群组名为项目全称或简称;
  2. 如果根群组是一个项目,子群组前后端分组,子群组名称为前后端简称

仓库命名

命名结构:前端为子项目描述 + 终端,后端为子项目描述 + 服务类型

  • 子项目描述:采用语义化的子项目名,结构建议为用户群+功能描述

用户群通常分为HQ端、B端、C端。功能描述如admin、store等。

例:

hq-admin(总部后台)、merchant-admin(商户后台)、c-ministore(用户端微店)

  • 终端:一般分为网页端(web,wap)、手机、pad移动端APP(ios/android/内嵌h5)、微信端(公众号、企业号、小程序、小游戏)和其他一些智能设备(如收银机、电视等)。使用规则:
    • 手机APP:mobile,可细分为mobile-android、mobile-ios、mobile-h5
    • 微信端:wechat,可细分为wechat-h5、wechat-miniapp
    • pad端:pad,可细分为pad-android、pad-ios、pad-h5
    • pos端:pos,可细分为pos-android、pos-ios、pos-web
    • 浏览器端:pc端web、手机端h5
  • 服务类型:service(Java 服务)、api(Node服务)、job(定时任务)等。

描述

在群组和项目描述中,注明项目组名称或群组用途。例如:xxxx项目-前端,xxxx项目-公众号。

权限

仓库权限涉及到企业核心资产保护,所以需要严格管理。

  1. 由系统管理员或技术负责人创建群组;
  2. 若某人的工作涉及到此分组下的所有代码仓库,则给此人加Group相应权限。否则,只能加项目权限;
  3. 非项目核心开发人员开通代码权限,需要通过公司正式申请流程(工单、邮件等)向相关人员(项目管理员)申请;
  4. 非项目成员开通代码权限,需要通过邮件向相关人员(项目管理员)申请,且最高开通“报告者”权限。

附:Gitlab 成员角色

角色描述
Owner / 所有者Git 系统管理员(专人)
Master / 主程序员项目管理员(限制为1人或专人)
Developer开发人员
Reporter报告者
Guest访客

如需了解对应权限,请查看GitLab官方权限说明

Last Updated: 2021/8/26 上午10:52:30