APIJSON/CONTRIBUTING.md

171 lines
8.5 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Contributing
我们提倡您通过提 Issue 和 Pull Request 方式来促进 APIJSON 的发展。
## Acknowledgements
非常感谢以下贡献者们对于 APIJSON 本项目做出的贡献:
- [TommyLemon](https://github.com/TommyLemon)(腾讯工程师,还开源了 APIJSON-Demo, apijson-framework, apijson-column, apijson-router 等)
- [ruoranw](https://github.com/ruoranw)(现居美国洛杉矶,还开源了 APIJSONdocs)
- [zhoulingfengofcd](https://github.com/zhoulingfengofcd)
- [Zerounary](https://github.com/Zerounary)(还开源了 APIJSONParser)
- [fineday009](https://github.com/fineday009)(腾讯工程师,还贡献了 apijson-framework, APIJSON-Demo)
- [vincentCheng](https://github.com/vincentCheng)(还开源了 apijson-doc)
- [justinfengchen](https://github.com/justinfengchen)
- [linlwqq](https://github.com/linlwqq)
- [redcatmiss](https://github.com/redcatmiss)(社保科技工程师)
- [linbren](https://github.com/linbren)
- [jinzhongjian](https://github.com/jinzhongjian)
- [CoolGeo2016](https://github.com/CoolGeo2016)
- [1906522096](https://github.com/1906522096)
- [github-ganyu](https://github.com/github-ganyu)
- [sunxiaoguang](https://github.com/sunxiaoguang)(知乎基础研发架构师)
- [403f](https://github.com/403f)
- [gujiachun](https://github.com/gujiachun)
- [gdjs2](https://github.com/gdjs2)(University of California, Riverside)
- [Rkyzzy](https://github.com/Rkyzzy)(SUSTech, University of California, Berkeley)
- [kxlv2000](https://github.com/kxlv2000)(SUSTech)
- [caohao-go](https://github.com/caohao-go)(腾讯工程师曾在华为、恒生担任C/C++开发工程师在wps担任项目经理在360担任技术专家)
- [Wscats](https://github.com/Wscats)(腾讯工程师、腾讯 AlloyTeam 成员、Tencent Creation Camp 成员、知名技术博主)
- [jun0315](https://github.com/jun0315)(腾讯工程师)
- [JieJo](https://github.com/JieJo)
- [yeyuezhishou](https://github.com/yeyuezhishou)(圆通工程师)
- [kenlig](https://github.com/kenlig)(还开源了 apijsondocs)
- [andream7](https://github.com/andream7)(微软工程师,还开源了 apijson-db2)
- [qiujunlin](https://github.com/qiujunlin)(字节跳动工程师,还开源了 APIJSONDemo)
- [HANXU2018](https://github.com/HANXU2018)(网易工程师,还开源了 APIJSON-DOC)
- [hclown9804](https://github.com/hclown9804)
- [chenyanlann](https://github.com/chenyanlann)(还开源了 APIJSONDemo_ClickHouse)
- [haolingzhang1](https://github.com/haolingzhang1)(腾讯工程师,还开源了 APIJson--demo)
- [jerrylususu](https://github.com/jerrylususu)(还开源了 apijson_todo_demo 和 apijson_role_extend)
- [Dalezee](https://github.com/Dalezee)(还开源了 apijson_camp)
- [aaronlinv](https://github.com/aaronlinv)
- [sy-records](https://github.com/sy-records)
- [Finkyky](https://github.com/Finkyky)
- [ifooling](https://github.com/ifooling)
- [transtone](https://github.com/transtone)
- [AwenJackson](https://github.com/AwenJackson)(上海信息出奇科技有限公司工程师,发布了 3 篇文章)
- [andy19055](https://github.com/andy19055)
- [glennliao](https://github.com/glennliao)(还开源了 [apijson-go](https://github.com/glennliao/apijson-go) 和 [apijson-go-ui](https://github.com/glennliao/apijson-go-ui)
- [eltociear](https://github.com/eltociear)
- [wb04307201](https://github.com/wb04307201)(还开源了 [apijson-dynamic-datasource](https://github.com/wb04307201/apijson-dynamic-datasource)
- [cloudAndMonkey](https://github.com/cloudAndMonkey)(还贡献了 apijson-framework, APIJSON-Demo新增支持了 Redis, Elasticsearch, Kafka, Lua 等并提供了多个 Demo
- [12345ZMTHL](https://github.com/12345ZMTHL)
- [cnscoo](https://github.com/cnscoo)(阿里云工程师)
- [aninZz](https://github.com/aninZz)
- [leomiaomiao](https://github.com/leomiaomiao)
- [YqxLzx](https://github.com/YqxLzx)
- [hiteshbedre](https://github.com/hiteshbedre)
- [wahowaho](https://github.com/wahowaho)
- [jarrodquan](https://github.com/jarrodquan)
- [gemufeng](https://github.com/gemufeng)(上海麦市工程师)
- [komiblog](https://github.com/komiblog)
- [ostrichManX](https://github.com/ostrichManX)
- [jia199807](https://github.com/jia199807)
#### 其中特别致谢: <br/>
cloudAndMonkey 提交的 11 个 Commits, 对 APIJSON 做出了 1,496 增加和 845 处删减(截止 2022/12/15 日) <br/>
justinfengchen 提交的 6 个 Commits, 对 APIJSON 做出了 3,130 增加和 0 处删减(截止 2020/11/04 日) <br/>
ruoranw 提交的 18 个 Commits, 对 APIJSON 做出了 328 增加和 520 处删减(截止 2020/11/04 日) <br/>
Zerounary 提交的 6 个 Commits, 对 APIJSON 做出了 1,104 增加和 1 处删减(截止 2020/11/04 日)。 <br/>
<br/>
APIJSON 持续招募贡献者,新增功能、修复 Bug、完善文档、修正错误、宣传推广、回答问题等都能帮助项目及广大用户。 <br/>
APIJSON 已开发近 6 年,在此感谢所有开发者对于 APIJSON 的喜欢和支持,希望你能够成为 APIJSON 的核心贡献者, <br/>
加入 APIJSON ,共同打造一个更棒的零代码、全功能、强安全 ORM 库,造福更多前后端开发者!🍾🎉
### 为什么一定要贡献代码?
APIJSON 作为腾讯开源的知名热门项目,贡献代码除了可以给简历加亮点、为面试加分,还可以避免你碰到以下麻烦: <br/>
1.你在 APIJSON 上更改的代码其他人看不到,不能帮你发现 Bug更不可能帮你修复 Bug 甚至优化代码 <br/>
2.作者和其它贡献者可能不兼容你更改的代码,导致你的项目在升级 APIJSON 版本后在功能甚至编译上出错 <br/>
3.你需要自己维护你的代码,每次升级 APIJSON 版本时,你都需要下载 APIJSON 新代码再合并你自己的更改 <br/>
#### 所以为了让你自己的更改始终能跟上项目版本,得到他人给予的可靠且持续的维护,强烈建议 [提交 Pull Request](/CONTRIBUTING.md#pull-request) 来贡献代码。
## Pull Request
我们除了希望听到您的反馈和建议外,我们也希望您接受代码形式的直接帮助,对我们的 GitHub 发出 Pull Request 请求。
### 如果是小改文档或代码
直接点文件右上角的编辑图标按钮 <br/>
![image](https://user-images.githubusercontent.com/5738175/130585672-8bd49ae5-2978-4ad6-a7a6-de0a0c2d0b68.png)
<br/>
然后底部简要输入修改说明,点击 Commit Change 按钮 <br/>
![image](https://user-images.githubusercontent.com/5738175/130586073-4a6aea74-3c88-4cd9-9c93-ffaba1270ab8.png)
### 如果有比较大的改动
以下是具体步骤:(如果使用本步骤GitHub 可能不会把贡献者添加到 Contributors 中,推荐用以下 [详细的图文步骤](https://github.com/Tencent/APIJSON/blob/master/CONTRIBUTING.md#%E8%AF%A6%E7%BB%86%E7%9A%84%E5%9B%BE%E6%96%87%E6%AD%A5%E9%AA%A4%E5%8F%AF%E5%8F%82%E8%80%83%E4%BB%A5%E4%B8%8B%E4%BB%BB%E6%84%8F%E4%B8%80%E7%AF%87))
#### Fork 仓库
点击 `Fork` 按钮,将需要参与的项目仓库 Fork 到自己的 Github 中。
#### Clone 已 Fork 项目
在自己的 Github 中,找到 Fork 下来的项目git clone 到本地。
```bash
$ git clone git@github.com:<yourname>/APIJSON.git
```
#### 添加 APIJSON 仓库
将 Fork 源仓库连接到本地仓库:
```bash
$ git remote add <name> <url>
# 例如:
$ git remote add APIJSON git@github.com:Tencent/APIJSON.git
```
#### 保持与 APIJSON 仓库的同步
直接在 fork Repo 的首页点 Contribute > Open pull request
![image](https://user-images.githubusercontent.com/5738175/131776033-74caf279-ebbf-45f1-a9c1-beff937a87fb.png)
或者
```bash
$ git pull --rebase <name> <branch>
# 等同于以下两条命令
$ git fetch <name> <branch>
$ git rebase <name>/<branch>
```
#### Commit 信息提交
Commit 信息请遵循 [Commit 消息约定](./CONTRIBUTING_COMMIT.md),以便可以自动生成 `CHANGELOG` 。具体格式请参考 Commit 文档规范。
<br/><br/>
#### 详细的图文步骤可参考以下任意一篇
GitHub - 对项目做出贡献 <br/>
https://www.jianshu.com/p/00cf29d2d66c
<br/><br/>
如何在 Github 上给别人的项目贡献代码 <br/>
https://git-scm.com/book/zh/v2/GitHub-%E5%AF%B9%E9%A1%B9%E7%9B%AE%E5%81%9A%E5%87%BA%E8%B4%A1%E7%8C%AE
## Issue 提交
#### 对于贡献者
在提 Issue 前请确保满足一下条件:
- 必须是一个 Bug 或者功能新增。
- 必须是 APIJSON 相关问题。
- 已经在 Issue 中搜索过,并且没有找到相似的 Issue 或者解决方案。
- 完善下面模板中的信息
如果已经满足以上条件,我们提供了 Issue 的标准模版,请按照模板填写。