Welcome to BGI Tumour R&D Co-development Protocol’s documentation!

README

本文档旨在基于git平台建立健全生信流程开发过程中的有效代码评审机制,下文测试基于Genomics Gitlab 实现,其在github 等类似工程管理平台亦有相同的实现。

问题与意见反馈: liubo4@genomics.cn

ISSUE创建及开发任务的划分

在生产环境稳定的流程版本基础上,流程的变更点应经过需求review后在Git Repository中以Issue的形式提交,使得项目相关开发者更紧密的追踪项目的进展方向,以期有效整合开发能力避免重复开发。

实例仓库可见于:https://gitlab.genomics.cn/Oseq/co-development, 假定 commit SHA = 81b0fb58 为初始稳定版本。

_images/issue-1.png

进入所在 Git Repository 的Issue 界面后,可以了解正在进行中Issue情况. 通过 New issue 按钮可以创建新的Issue:

_images/issue-2.png

实例仓库中创建的内容如下:

_images/issue-3.png

可以在被委托的开发任务和自己感兴趣的issue创建新的分支进行对应的开发测试工作:

_images/issue-4.png

完成开发并提交新的分支

开发需求确定后,开发人员可以在本地仓库应用应用分支并完成相应的开发工作。

(由于流程规模较大,泛癌流程在dx_cancer账户下提供了一套公共的开发环境,亦可在个人目录下拉取完整的流程以确保同时进行多项工作时无冲突发生)。

git clone ssh://git@gitlab.genomics.cn:2200/Oseq/co-development.git
# 更改主分支的名称 / 创建新的分支
git branch -m "development"
# 将本地开发分支推送到中心Git Repository (该过程不影响主分支的内容)
git push origin development

如下图所示,在名为development 的分支上进行了若干修改:

_images/branch-1.png

Code Review 进行合并分支

完成修改并提交分支后,即可回到Issue内分支内发起分支合并。

选择需要合并入master 的分支上

_images/merge-1.png

须注意的是,分支合并前需要进行必要的Code Review ,建议由代码审核者发起分支合并,并填写好相关人员信息。

_images/merge-2.png

填写好相关信息后,相关项目负责人对Merge Request 内容审核通过后即可合入主分支。

_images/merge-3.png

(在 Merge Request Titile 声明 Fix #issue number 可以将之与issue相关联)

在泛癌流程中的应用示例

在肺癌ctDNA流程中的应用示例

Indices and tables