向Openstack贡献代码

环境:ubuntu14.04 server版 + VMware Workstation 10.0

本文主要参考此文,有些不同之处,包括bug解决以及一些过程的细化。
建议结合官方文档,出问题了访问这里,查找是否有相同问题。

《向 OpenStack 贡献您的代码》这篇文章分步骤完成,很是详尽。虽然此文并没有使用IDE这一步,但是其它一致,这里就按照其步骤来,但是会更为详细。

第一步 设置账户

先看看openstack的开发流程,如图:
这里写图片描述
参考上图可看到,开发者并不能在修改openstack源码后直接提交到github,需要走个中间过程gerrit,通过该过程审核测试后才能被提交。
如果对git不太了解,推荐廖老师的博客可以很快上手。

有三个地方要注册账户,分别是launchpad (一般report/assign bugs)、gerrit(code review,给别人或自己了解所关注项目的变化)、openstack (用以承认开发者为openstack的开发者),其中前两个一定要把email设置一致,不然后期提交bug出现错误。接下来分别列出三个的注册过程:

1. Set launchpad account
这里写图片描述
只需要设置好图中的1、2两个信息就好,信息1中的邮箱要与第2步的gerrit邮箱一致。信息2的ssh key生成步骤可参考此文,注意其中的邮箱设置要与信息1中的邮箱一致。(用一个邮箱就行了,不会错,初学就别给自己添堵)

至于上图中的OpenPGP keys,笔者也是最初参考《向 OpenStack 贡献您的代码》一文,其说明了要设置,实则官网参考手册不需要的,过程繁琐,所以忽略之;至于launchpad id,是可以改的,但是不能与已有的ids重复,这个对后面也没影响,设置一个就好,别较真;还有个Karma值,这是后期report bug之后给的积分还是什么,最开始设置账户是为0的,忽略之。

2. Set gerrit

这里写图片描述
开始设置时,需要唯一的username,记住这个username是唯一的,以后都是通过这个标识来访问的。在gerrit里面需要设置四个地方:
—-Contact Information,主要是设置full name和与launchpad相同的email(full name不强调唯一且可以更改,最好还是与username设置一致,笔者开始设置不一致导致出错);
这里写图片描述

—-SSH Public Keys,这个与launchpad里面的设置一样,不赘述;
这里写图片描述

—-HTTP Password,这个有必要,特别是国内的开发者,这样可以使用HTTPS来取代SSH方式提交代码。
这里写图片描述

—-Agreements,New Contributor Agreement,然后签署ICLA:
这里写图片描述

3. Join The OpenStack Foundation
这一步很简单也很重要,下图是设置后的图:
这里写图片描述

这里的设置有两点要说明,member level的选择以及个人信息的设置。
member level要选择foundation member,不要选择community member;
个人信息要设置好邮箱等基本信息,其他信息对后面贡献代码不太重要,有心者填写详细些也是可以的。

第二步 本地配置

1. 配置本地git-review
这里都是一些终端命令:

安装git review
sudo apt-get install git-review

基本信息设置
git config –global user.name “leo”
git config –global user.email “your_email@youremail.com”,所有邮箱设置一样就好

本地配置使用https访问
git config –global gitreview.scheme https
git config –global gitreview.port 443
git config –global gitreview.username leo

清洁环境先
git remote rm gerrit

添加远程gerrit,不然会提示找不到gerrit
git remote add gerrit https://leo@review.openstack.org:443/openstack/keystone.git

键入git config -l得到这样的结果:
这里写图片描述

2. 从github上clone一个待测试项目
git clone https://git.openstack.org/openstack/keystone.git

3. 测试git-review
git review -v ,第一次运行会提示输入密码(review上设置的https访问密码),完了如下图:
这里写图片描述

提示没有改动,所以这次提交时没有意义的。以上只是测试而已,接下来要提交一个bug。

第三步 测试提交修改bug后的工程

修改一个bug,首先得定位一个bug,定位后把这个bug分配给自己(以上均是在launchpad账号上完成),在本地克隆的工程修改完成后git review ,成功后会在自己的gerrit账号(review)My–>changes会出现对应的提交记录。下面详述以上过程:

1. report a bug
为什么要report a bug?因为这里是测试用例,可不能拿别人report的bug来玩。
1)访问https://launchpad.net/keystone,选择Report a bug;
2)然后会要你描述一下bug信息,这里描述为”test for git review,ignore it“,接着会列出一些bugs,拖到最下面选择”no, i need to report a new bug“,Summary 和Further information填写”test for git review,ignore it“,然后submit bug report,如图:
这里写图片描述

2. assign the bug to yourself
上图是完成第2步后的情形,现在在图中红色方框内把这个”Unassigned”标签点击一下,再选择”assign me“即可。这是笔者的bug地址https://bugs.launchpad.net/keystone/+bug/1526637,最后的数字是bug id,独一无二的,还有个用处是在debug时用的git 分支最好把这个id包含进去,以提醒自己修改的是哪个bug。

3. fix the bug on your machine
这里修改工程时,得用到一些git的操作,上面有git基本教程,不记得再往上翻翻,不赘述。
新建并切换分支:git checkout -b bug1526637 ;
在分支中改代码,这里只创建一个文件就行,文件名为testforbug1526637 , 键入命令touch testforbug1526637,可以查看现在的文件信息如图:
这里写图片描述

剩下的就是git命令,先添加再提交,如图:
这里写图片描述

至此,本地修改完成,正常修改bug还是要本地测试的。

4. git review your work
上面工作完成后,键入git review,会提示输入设置的密码,如图:
这里写图片描述

git review成功后访问https://review.openstack.org/,登陆个人账号(My–>changes),查看提交记录,如图:
这里写图片描述

红色框内是刚刚提交的信息摘要,单击可查看详细信息。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值