新文件: workflow/images/merge3.png 修改: workflow/workflow.md Signed-off-by: Li,Juejie <jjli@linx-info.com>
111 lines
6.9 KiB
Markdown
111 lines
6.9 KiB
Markdown
# 维护linx 6.0.42.41的流程
|
||
|
||
## 1. 概述
|
||
|
||
本文档首先给出了维护linx 6.0.42.41的工作流程图,然后对工作流程中比较复杂的操作步骤进行详细描述。其中有些步骤已经有了详细的描述文档,这里会给出相关文档的链接,以方便查阅。
|
||
|
||
## 2. 工作流程图
|
||
|
||

|
||
|
||
## 3. 比较复杂的操作步骤
|
||
|
||
### 3.1注册bugzilla账号
|
||
|
||
关于怎样注册bugzilla账号,这里有指导文档[点击查看](http://gitlab.rd.in.linx/document/maintainer-howto/blob/master/08.bugzilla-workflow/01.create-a-new-bugzilla-account.md)。
|
||
|
||
### 3.2提交bug
|
||
|
||
关于怎样提交bug,[点击查看指导文档](http://gitlab.rd.in.linx/document/maintainer-howto/blob/master/08.bugzilla-workflow/02.submit-bug.md)。
|
||
提交bug时,有时需要上传收集的信息包或者照片等大的文件,而bugzilla允许上传的文件大小限制在1M,这时可以将这些大的文件上传到ftp服务器中,具体操作方法有指导文档,[点击查看](http://gitlab.rd.in.linx/document/maintainer-howto/blob/master/08.bugzilla-workflow/04.ts-server.md)。
|
||
选择故障类型的时候,需要根据具体的情况作出选择,当你不能决定故障类型时,要跟大家进行讨论。
|
||
:zap: 注意:组长给某个组员分配了bug,该组员会收到邮件通知;在有些情况下,会先有问题的描述,然后组长会让某个组员提交bug,再把这个bug分给这个组员自己,此时,提交bug并得到bug任务的组员不会收到邮件通知,需要该组员记住自己提交的bug号,再去解决问题。
|
||
:zap: 注意:标记一个bug跟已有的bug重复的步骤:
|
||
* 找到bug标题下边的Status,如图所示:
|
||

|
||
* 鼠标单击后边的“edit”会跳转到“Additional Comments”文本框,如图所示:
|
||

|
||
在文本框中可以填写必要的说明信息,标记重复bug主要在下面这一步:
|
||
* 鼠标单击“Status”后边的下拉列表,选择“RESOLVED”,再单击后边的下拉列表,选择“DUPLICATE”,在后面出现的文本框中填入重复了的bug号,如图所示:
|
||

|
||
即完成了重复bug的标记。进入到“被重复”的bug(比如这里的1773)所在的页面,即可看到标记后的结果,如图所示:
|
||

|
||
|
||
|
||
### 3.3 注册gitlab账号
|
||
|
||
关于怎样创建gitlab账号,[点击查看指导文档](http://gitlab.rd.in.linx/document/maintainer-howto/blob/master/10.gitlab-usage/01.create-an-account.md)。
|
||
注册完账号后,要能够上传代码,还需要添加SSH Key,[点击查看指导文档](http://gitlab.rd.in.linx/document/maintainer-howto/blob/master/10.gitlab-usage/02.add-ssh-keys.md)。
|
||
|
||
:zap: 注意:维护linx6.0.42操作系统,要经常跟git版本控制工具以及gitlab工具打交道,所以需要对git和gitlab的基本使用一定的了解[点击查看指导文档](http://gitlab.rd.in.linx/linx6.0.42/documents/blob/master/git-frequently-used-command.md)。
|
||
|
||
### 3.4 将applications.git库克隆到你的计算机上
|
||
|
||
使用命令
|
||
```
|
||
git clone git@gitlab.rd.in.linx:linx6.0.42/applications.git
|
||
```
|
||
有关applications的详细情况,[点击查看介绍文档](http://gitlab.rd.in.linx/linx6.0.42/documents/blob/master/intro-applications-repository.md)。
|
||
|
||
### 3.5 在applications工作区创建分支,并切换到新创建的分支
|
||
使用命令
|
||
```
|
||
git checkout -b 4.2/XXXX
|
||
```
|
||
这里的XXXX是提交bug时生成的bug号。
|
||
:zap: 注意:创建并切换分支前,一定要确保你当前的分支在4.2/daily-build下。
|
||
用命令
|
||
```
|
||
git branch
|
||
```
|
||
查看。
|
||
在你新创建的分支上完成对bug的修改。
|
||
|
||
### 3.6 提交修改
|
||
|
||
完成了修改后,首先要将修改添加到本地的git库,再进行提交(有关提交信息的填写规范,[点击查看指导文档](http://gitlab.rd.in.linx/document/maintainer-howto/blob/master/09.git-usage/03.instructions-on-adding-bugzilla-when-you-commit.md))。这些动作按顺序通过下列命令来完成:
|
||
```
|
||
git add .
|
||
git commit -s
|
||
```
|
||
|
||
### 3.7 将修改push到gitlab上
|
||
|
||
使用命令
|
||
```
|
||
git push origin 4.2/XXXX:4.2/XXXX
|
||
```
|
||
|
||
### 3.8 在bugzilla中提交评审
|
||
|
||
首先进入到新提交的bug页面,找到Add an attachment (proposed patch, testcase, etc.),如图所示:
|
||

|
||
点击Add an attachment,进入到提交评审页面,如图所示:
|
||

|
||
* 在File下面的文本框中,填入你提交的分支的url(通过浏览器打开gitlab中你push上去的分支,复制该分支的url,然后粘贴到此文本框中);
|
||
* 在Description下的文本框中,对你的工作进行简短的描述;
|
||
* 勾选path前面的选择框;
|
||
* inspection后边是个选择条,你把它选成“?”时,后边才会有文本框,其中填入评审你工作结果的人的邮箱地址,如果有多个人评审,可以填入多个人的邮件地址,中间用逗号分开;
|
||
* 点击下边的submit按钮,完成提交评审。
|
||
|
||
:zap: 这里需要注意的是:你应该清楚attachment实际上应该是“附件”,也就是说,这一步称为“添加附件”更为准确,之所以称为“提交评审”只是因为在“inspection”后边选择了“?”。在上图页面中,如果你点击attach a file那个超链接,页面会变成如图所示:
|
||

|
||
这两个页面的切换逻辑你可以体会一下。bugzilla设置该选项的初衷在于添加跟当前bug相关的文件,比如补丁,截图,测试方法或日志,或其他任何二进制或大到不适合放在comment中的文件。要知道在这里你”提交评审“实质上是添加了一个附件,附件的内容为你提交的gitlab的url。详细描述请参阅[bugzilla提供的文档](https://bugzilla.readthedocs.org/en/5.0/using/editing.html#attachments)。
|
||
|
||
|
||
### 3.9 在gitlab上创建merge request
|
||
|
||
如果你的提交通过了评审,bugzilla会给你发一条邮件,提醒你你的工作通过了评审,邮件内容如图所示:
|
||

|
||
|
||
下一步就是创建“合并请求”(merge request)。在gitlab页面上找到你创建的分支,如图所示:
|
||
|
||

|
||
点击绿色的“+Create Merge Request“,进入到填写评审信息的页面,如图所示:
|
||
|
||

|
||
这里只需要从“Assign to“的下拉列表中选择有权利合并分支的人即可,然后点击绿色的“Submit new merge request“,完成合并请求的创建。
|
||
|
||
如果同意合并分支点击页面中的“Merge”按钮,如果不同意“合并请求”,点击“Close merge request”,关闭请求,如图所示:
|
||

|