《Commit Checklist for Chromium Workflow》

资料:《Commit Checklist for Chromium Workflow》


Commit Checklist for Chromium Workflow

在上传change lists(CLs) on Gerrit和code review之前,浏览本文档清单是很有用的。Gerrit是chromium项目的code review platform。目标受众是不熟悉 contributing to Chromium project的software engineer

Checklist是强大给工具,可以确保工作的高效性,不至于过多的大脑能量去确认下一步的工作内容

1.Create a new branch or wwitch to the correct branch

在开始开发之前,先创建一个新的分支

git new-branch <branch_name>

和下面的等价,但建议用下面的,好理解

git checkout -b <branch_name> 。等于创建一个分支并且切换到新分支

将assign到自己的crbug标记为 “started”,这样别人就知道你在修复了,避免重复工作

2.If there is a local upstream branch,rebase the upstream changes

假设有一个上游和下游分支,如果你在上游分支提交了些东西,并且希望在下游分支中出现 上游分支的修改,需要做:(自己先测试一下再问问题)

  • git checkout downstream
  • git rebase -i @{u} 拉上游分支到当前分支
  • git rebase -i @{u} 再把下游的改变重新设置到上游上??? 不懂

会有大量的冲突要修改,完成后执行 git rebase --continue

3.Make you change

fix bug,finish feature

4.Make sure the code builds correctly

先本地进行测试,没问题后再提交,CQ(Commit Queue)可能要好几个小时

5.Test your change

LOG(ERROR) 可以输出错误信息,并且给error的地方加上断点
常见的edge case

  • Guest mode
  • Enterprise/EDU/ users
  • Aaccessibility
  • Ofiicial Chrome-branded build(for Googlers)

6.Write unit or browser tests for any new code

多做测试单元

7.Ensure the code is formatted nicely

> git cl format --js 可以格式化代码 平时会用吗?具体什么效果

8.Review your change

git diff能查看和在上次staged之后的改变
git upstream-diff,可以查看和上游的所有差别

9.stage relevant files for commit

git add filepath

10.Commit your change

git commit [-a] -m “Comments”

11.Squash your commits

用rabase将多次commits,合成一次commit

12.Rebase your local repository

怎么和之前在Pro git里学的Rebase不太一样呢?
Rebase是一种巧妙的方法,同步远端仓库和解决change list 上的冲突
执行 > git rebase-update可以更新远端的更新到本地分支 == 纳尼,这个更诡异了 ==
并且会删除本地分支

通过gclient sync -D更新第三方库依赖

13.Upload the CL to Gerrit

使用> git cl issue确保上传正确的Gerrit CL。如果在上传一个新的CL,issue number是none
上传的时候要吧reviewers加上,一些注释,标题tilte之类的,便于reviewer的人看

14.Check the CL again in Gerrit

git cl web 打开对应的web页面,看看提交上去的内容对不对

先self-review,然后再找人review

15.Make sure all auto-regression tests pass

CQ Dry Run

查看是否通过CQ的测试

16.Add reviewers to review you code

Click Find Ownners 或者 git cl owners 去找到文件的拥有者review code。在Code Search中,可以找到熟悉这部分file and code owners

17.Start your review

click “Start Review” button

18.Implement feedback from reviewers

和reviewer保持时刻的沟通

19.Land your CL

一旦获得Looks Good To Me(LGTM),代表有一个reviewer通过了。CL通过CQ,并不代表后续没问题了。 后续可能还会有BUG,请关注chromium的构建树网页

20.Cleanup

land成功后,执行 git rebase-update 或者 git cl archive。会自动删除合并的分支,标记相关的crbugs as “fixed”


感觉还是不太熟练,等后面碰到再说吧 orz…

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值