提交贡献代码
介绍从 github 发起 pull requests 和提交代码的流程。
Fork 仓库
访问 https://github.com/yunionio/cloudpods ,将仓库 fork 到自己的 github 用户下。
Clone 源码
clone 自己 fork 的仓库,并设置 upstream 为源仓库。
$ git clone https://github.com/<your_name>/cloudpods
$ cd cloudpods
$ git remote add upstream https://github.com/yunionio/cloudpods
提交代码流程
1. 从 master checkout 出 feature 或者 bugfix 分支
# checkout 新分支
$ git fetch upstream --tags
# 下面假设新的分支名为 'feature/implement-x'
# 分支名应该有语义性,描述这次开发要实现或者修复什么
$ git checkout -b feature/implement-x upstream/master
2. 在新的分支上进行开发
所有的代码修改,都在新的分支上进行。
如果不熟悉 git 相关的操作,可参考这个文档先学习 git 的基本操作:Git-Tutorials。
3. 开发完成后,进行提交PR前的准备操作
# 同步远程 upstream master 代码
$ git fetch upstream
# 有冲突则解决冲突
$ git rebase upstream/master
# push 分支到自己的 repo
$ git push origin feature/implement-x
4. 在GitHub的Web界面完成提交PR的流程

- 提完 PR 后请求相关开发人员 review,并设置Labels来表明提交的代码属于哪一个模块或者哪几个模块。

- 或者通过添加评论的方式来完成上一步;评论 "/cc" 并 @ 相关人员完成设置reviewer,评论 /area 模块名称 标记此次改动所属的模块。

所有Label都可以在issues—Labels下查询到,带area/前缀的Label均可以使用评论"/area"的形式添加