知学云代码管理规范¶
知学云产品代码统一在Gitlab
平台上管理,版本控制采用git分布式版本管理工具。团队按照 Gitflow 做版本控制,develop
、release-x
、master
分支受保护(protected
),向保护分支合并需要开发负责人进行 Code Review。
代码清单¶
groups
清单如下:
group | 说明 |
---|---|
zxy | SaaS 产品 |
paas | PaaS 产品 |
saas | 基于 PaaS 驱动的新 SaaS 产品 |
cms | 知学荟(黑箱外) |
data | 数据智能 |
common | 基础依赖 |
base | 基础服务 |
document | 文档 |
demo | 工程demo |
详见:代码清单
代码获取与推送¶
代码获取¶
有两种获取代码的方式,https
和ssh
,ssh
需要配置ssh key
,我们这里直接采用https
方式获取源代码
# clone代码
git clone https://gitlab.zhixueyun.com/zxy/xxx.git
# checkout分支
git checkout -b my-dev(本地分支名) origin/develop(远程分支名)
首次下载需要输入你注册gitlab的用户名和密码
代码提交¶
git add .
git commit -m 'commit message'
代码推送¶
Git跟SVN不同,是分布式的版本管理,本地仓库提交之后需要推送到远程仓库
git push origin 本地分支名:远程分支名
提交Merge Request¶
进入Gitlab
对应工程主页,提交Merge Request(合并请求)并指定负责人Code Review,代码审核通过之后方可合并到主干分支
- 新建合并请求
- 选择源分支与目标分支,提交合并请求
注意以下情况 不允许 提交Merge Request:
- 与目标分支存在冲突(本地
merge
目标分支,解决冲突,冲突代码联系相应开发人员核对) - CI 构建(
build
)未通过 - SonarQube代码扫描未通过,按照开发规范修改相关代码
你也可以使用Git可视化工具(
TortoiseGit
、SourceTree
等)进行代码管理等一系列操作, 分支详细说明见代码管理规范