首先感谢每一个愿意参与社区贡献的同学,DB-GPT 社区有大家的参与才能变得更好!!!

本文档以 DB-GPT 项目为例,描述如何给 DB-GPT 项目提交代码贡献,其它项目类似。

Fork 项目

  1. 为了给 DB-GPT 项目做贡献,您需要先 “Fork” DB-GPT 项目,点击在项目页面的 “Fork” 按钮,如下图:

代码贡献 - 图1

  1. 克隆您 Fork 后的项目到本地开发环境,命令如下:
  1. git clone https://github.com/<YOUR-GITHUB-USERNAME>/DB-GPT

记得把用户名<YOUR-GITHUB-USERNAME>换成您的实际用户名。

开发环境搭建

  1. 创建一个 conda 环境:
  1. python >= 3.10
  2. conda create -n dbgpt_env python=3.10
  3. conda activate dbgpt_env
  1. 切换到项目目录下:
  1. cd DB-GPT
  1. 然后安装项目依赖:
  1. # it will take some minutes
  2. pip install -e ".[default]"
  1. 安装开发依赖:
  1. pip install -r requirements/dev-requirements.txt
  2. pip install -r requirements/lint-requirements.txt
  1. 安装 pre-commit
  1. pre-commit install
  1. 安装 make

一般情况,大部分 Linux 发行版和 Mac OS 已经自带了 make构建工具,如果您的系统没有,请搜索安装。

新建分支并完成代码开发

  1. 创建一个新的分支,命令如下:
  1. git checkout -b <branch-name>

请把 <branch-name>换成实际的分支名。

  1. 修改代码
  2. 修改或者添加必要的文档
  3. 修改或添加必要的单元测试
  4. 格式化代码,命令如下:
  1. make fmt
  1. 执行单元测试,命令如下:
  1. make test
  1. 检查类型
  1. make mypy
  1. 检查代码是否符合项目风格约束
  1. make fmt-check
  1. 添加变更文件
  1. git add xxxx

注意只添加必要的修改文件。

  1. 提交您的变更
  1. git commit -m "feat: Add chatgpt proxy LLM"

注意将 commit 修改为您实际的变更消息.

git commit 过程中会自动执行 pre-commit安装 hooks,该过程可能需要一些时间,请耐心等待,如果 git hook 执行失败了请根据失败提示消息修复后重新 commit。

  1. 将本地开发的分支提交到远程仓库。
  1. git push origin <branch-name>

请把 <branch-name>换成实际的分支名。

提交 PR

  1. 导航到您克隆的 Github 仓库页面。
  2. 点击“New pull request”按钮。
  3. 选择您刚提交到远程仓库的分支提交 PR。
  4. 根据 PR 模板添加必要的信息
  5. 等待维护成员的 review 并提供必要的反馈。

其它

有任何问题请随时联系我们,我们非常愿意给大家提供必要的帮助!