大家都知道Android是一个开源项目,那任何人都可以为其贡献代码,虽然在developer的网站上有详细的步骤(http://source.android.com/source/submit-patches.html#upstream-projects),但是按照其一步一步来也会遇到很多麻烦,在这里把我成功提交patch的步骤记录下来,一方面希望别人不要再走弯路,一方面也给对英文抵触的同学一个参考。
首先,简单介绍一下android官方的代码审核工具Gerrit,Gerrit 是基于git 的 项目管理工具和代码审核工具,网上关于git的介绍很多,推荐一本git 经典书籍《pro git》,因为android的源码就是git管理的,相信大家还会比较熟悉的。
git中文教程:http://www.cnblogs.com/zhangjing230/archive/2012/05/09/2489745.html
git快速入门:http://zhuidaniu.com/tutorials/22
继续说Gerrit,Gerrit是一个网页在线工具,所有外部提交的代码都要先提交到这个在线工具中等待代码审核,只有审核通过的代码才能并入到开源项目中,一旦审核通过,Gerrit 可以自动的merge代码到代码仓库中。
Android 项目 Gerrit传送门:https://android-review.googlesource.com/#/q/status:open,n,z
如果你对Gerrit感兴趣,想把Gerrit集成到你现在进行的项目上也是可以的,参考Geriit的开源项目: http://code.google.com/p/gerrit/
你还需要熟悉一下android官方提供的repo命令,repo是一个python脚本,其中对git命令进行了一个封装,repo可以同时下载多个git仓库。
Git,Repo,Gerrit的简单介绍以及提交补丁时候的基本工作流程:http://source.android.com/source/version-control.html
相信大家已经对怎么提交补丁到Android的开源项目有了个理论上的认识,接下来我们从实践出发真正提交个补丁上去,推荐使用Ubuntu作为android的源码开发环境。