Skip to content

如何参与项目

杨海龙 edited this page Oct 30, 2020 · 2 revisions

如何参与项目

本项目大量使用 GitHub 内置工作流管理功能,因此在参与时需要注意这些功能的使用。

提交相关信息(需求建议、错误异常等)

请使用 Issue 功能,具体参见置顶 Issue #5

提交代码

请使用 Pull Request(PR) 功能。步骤如下:

  1. 如果你没有本代码库的写入权限,请先使用 Fork 功能复刻一份自己的代码库,并在步骤 1 - x 中使用操作自己的代码库。教程详见(中文/EN)
  2. 在自己的计算机上使用 Git 版本管理工具完整克隆整个代码库,命令参考 git clone https://github.com/deeplang-org/deeplang.git
  3. 切换路径至代码库文件夹内,并切换到自己想修改的代码所在的分支。修改 master 分支的代码无需切换。
  • 例如,需要修改 wasmvm 分支的代码,则应 git checkout wasmvm
  1. 如你并未执行第0步的复刻代码库操作,并且拥有本代码库的写入权限,请创建并切换至新分支后再进行修改。命令参考:git checkout -b joeyteng-wasmvm-patch
  2. 进行修改,并使用 git add ..., git commit 等功能创建 commit 保存自己的修改
  3. 将自己的修改推送至远端仓库。命令参考 git push origin joeyteng-wasmvm-patch
  4. 进入远端仓库界面,点击 Pull requests > New pull request,点击 compare across forks 链接,并做如下选择
  • base repository 栏选择本仓库 deeplang-org/deeplang
  • base 栏选择你要修改的分支(即第 2 步切换至的分支),例如 wasmvm
  • head repository 栏选择你刚刚提交到的仓库,如 joeyteng/deeplang
  • head 栏选择你刚刚提交的分支(应和第 3 步创建的分支同名),如 joeyteng-wasmvm-patch
  1. 点击 Create pull request 创建 PR,并填入相关信息
  • 可以修改自动填写的 title 标题
  • 有需要补充的相关信息请填入 Leave a comment 一栏;一般来说,需要填写此 PR 相关的 issue
    • 例如,若此 PR 修复了 #7 中提到的问题,则在 Comment 一栏中填入 #7
  • 可以在右侧选择相关的 Reviewers 做 Code Review
  • 可以使用 Label 功能设定这个 PR 的类别
  • *请在右侧设定 Projects,本项目的 PR 可以直接设定为 Deeplang
  1. 点击 Create pull request 完成创建;或点击按钮右侧三角,创建一个草稿。
  2. 收尾:在本地代码库将自己的 git 分支切换回原分支。命令参考:git checkout -

关于commit

  1. 一个PR的commit需要合并成一个,可以利用squash and merge功能。

squash and merge

  1. commit的命名,格式[前缀]commit message,例如:"[frontend]add print support".
  • [frontend],该前缀包括parser、lexer、codegen等前端模块的代码提交
  • [backend],该前缀主要是针对后端的wasm vm
  • [document],该前缀包括CCB纪要、proposal、spec等文档提交
  • [else],其他提交

答疑

如有疑问,请联系 @JoeyTeng

Clone this wiki locally