不只框架的 Spring Cloud Alibaba
Spring Cloud Alibaba 从开源建设以来,受到了很多社区同学的关注。社区的每一个 issue ,每一个 PR,都是对整个项目的帮助,都在为建设更好用的 Spring Cloud 添砖加瓦。
Spring Cloud Alibaba 不仅是一个框架而已;在开发框架基础之上,我们基于 start.aliyun.com,提供了一整套面向开发者的服务和工具:包括Java工程脚手架、沙箱场景实验室、IDE插件等。
我们真心地感谢为这个项目提出过 Issue 和 PR 的同学,特别是这些 contributor: HaojunRen、xiejiashuai、mengxiangrui007 、liaozan
我们希望有更多社区的同学加入进来,一起把项目做好。How to contribute 文档将长期在 GitHub 更新。
如何贡献
在贡献代码之前,请您稍微花一些时间了解为 spring cloud alibaba 贡献代码的流程。
贡献什么?
我们随时都欢迎任何贡献,无论是简单的错别字修正,BUG 修复还是增加新功能。请踊跃提出问题或发起 PR。我们同样重视文档以及与其它开源项目的整合,欢迎在这方面做出贡献。
如果是一个比较复杂的修改,建议先在 Issue 中添加一个 Feature 标识,并简单描述一下设计和修改点。
从哪里入手?
如果您是初次贡献,可以先从 good first issue 和 help wanted 中认领一个比较简单的任务。
Fork 仓库,并将其 Clone 到本地
- 点击 本项目 右上角的
Fork
图标 将 spring-cloud-incubator/spring-cloud-alibaba fork 到自己的空间。 - 将自己账号下的 spring-cloud-alibaba 仓库 clone 到本地,例如我的账号的
flystar32
,那就是执行git clone https://github.com/flystar32/spring-cloud-alibaba.git
进行 clone 操作。
配置 Github 信息
- 在自己的机器执行
git config --list
,查看 git 的全局用户名和邮箱。 - 检查显示的 user.name 和 user.email 是不是与自己 github 的用户名和邮箱相匹配。
- 如果公司内部有自己的 gitlab 或者使用了其他商业化的 gitlab,则可能会出现不匹配的情况。这时候,你需要为 spring-cloud-alibaba 项目单独设置用户名和邮箱。
- 设置用户名和邮箱的方式请参考 github 官方文档,设置用户名,设置邮箱。
merge 最新代码
fork 出来的代码后,原仓库 Master 分支可能出现了新的提交,这时候为了避免提交的 PR 和 Master 中的提交出现冲突,需要及时 merge master 分支。
- 在你本机的 spring-cloud-alibaba 目录下,执行
git remote add upstream https://github.com/spring-cloud-incubator/spring-cloud-alibaba
将原始仓库地址添加到 remote stream 中。 - 在你本机的 spring-cloud-alibaba 目录下,执行
git fetch upstream
将 remote stream fetch 到本地。 - 在你本机的 spring-cloud-alibaba 目录下,执行
git checkout master
切换到 master 分支。 - 在你本机的 spring-cloud-alibaba 目录下,执行
git rebase upstream/master
rebase 最新代码。
配置 Spring Cloud 标准的代码格式
spring cloud 项目有自己独有的代码格式规范,提交代码前需要先配置好代码格式规范。
- 点击此链接,下载 spring cloud 标准的代码格式 https://github.com/alibaba/spring-cloud-alibaba/blob/master/eclipse/eclipse-code-formatter.xml
- 点击此链接,下载 spring cloud 标准的 import 代码格式 https://github.com/alibaba/spring-cloud-alibaba/blob/master/eclipse/org.eclipse.jdt.ui.prefs
- 在 IDE 中新增代码格式化插件,并配置好 spring cloud 的代码格式规范。
- 注意 Eclipse 用户可以直接使用此代码格式文件,IDEA 用户请参考此 链接 先安装插件
这是配置好的界面:
开发、提交、Push
开发自己的功能,开发完毕后建议使用 mvn clean install
命令确保能修改后的代码能在本地编译通过。执行该命令的同时还能以 spring 的方式自动格式化代码。然后再提交代码
merge 最新代码
- 同样,提交 PR 前,需要 rebase master 分支的代码,具体操作步骤请参考之前的章节。
- 如果出现冲突,需要先解决冲突。
提交PR
提交 PR,根据 Pull request template
写明修改点和实现的功能,等待 code review 和 合并,成为 Spring Cloud Alibaba contributor,为更好用的 Spring Cloud 做出贡献。
社区钉钉群
https://github.com/alibaba/spring-cloud-alibaba/blob/master/README-zh.md