参与 HugeGraph 社区
选择贡献方式
可以通过 GitHub Issues 报告问题,也可以提交代码、测试或文档。准备较大的改动前,建议先创建 Issue 并说明范围,避免重复工作。
下面以 apache/hugegraph 为例。其他 HugeGraph 仓库的流程相同,但构建和测试命令应以各仓库的 README.md、AGENTS.md 和 CI 配置为准。
准备仓库

先在 GitHub 上 fork apache/hugegraph,再克隆自己的 fork:
不要直接在 master 上开发。每项改动使用单独分支:
修改和验证
HugeGraph Server 的代码位于 hugegraph-server/。例如,核心模块路径是:
当前主仓库根目录的 Maven 模块如下;Server 的存储适配器 hugegraph-server/hugegraph-hstore/ 与独立的存储节点项目 hugegraph-store/ 是不同模块。
| 路径 | 子模块 |
|---|---|
hugegraph-server/ | hugegraph-core/、hugegraph-api/、hugegraph-example/、hugegraph-dist/、hugegraph-test/、hugegraph-rocksdb/、hugegraph-hbase/、hugegraph-hstore/ |
hugegraph-pd/ | hg-pd-common/、hg-pd-client/、hg-pd-core/、hg-pd-service/、hg-pd-dist/、hg-pd-cli/、hg-pd-grpc/、hg-pd-test/ |
hugegraph-store/ | hg-store-common/、hg-store-client/、hg-store-core/、hg-store-node/、hg-store-dist/、hg-store-cli/、hg-store-grpc/、hg-store-rocksdb/、hg-store-test/ |
hugegraph-commons/ | hugegraph-common/、hugegraph-rpc/ |
hugegraph-cluster-test/ | hugegraph-clustertest-minicluster/、hugegraph-clustertest-dist/、hugegraph-clustertest-test/ |
| 独立根模块 | hugegraph-struct/、install-dist/ |
上述名称来自根 pom.xml 及各子项目 pom.xml;代码结构以正在使用的分支为准。
先运行与改动直接相关的测试。Server 常用测试入口如下:
GitHub 已不支持通过用户名和密码直接推送代码。需要使用个人访问令牌时,请在令牌设置页创建并按需授权:

提交第三方依赖时,还要同步发行包中的许可证信息:
- 把依赖的许可证文件放入
hugegraph-server/hugegraph-dist/release-docs/licenses/。 - 更新
hugegraph-server/hugegraph-dist/release-docs/LICENSE;依赖包含 NOTICE 时,同时更新NOTICE。 - 运行
hugegraph-server/hugegraph-dist/scripts/dependency/regenerate_known_dependencies.sh,更新已知依赖清单。
提交 Pull Request
提交代码所用的邮箱需要绑定到 GitHub 账号。请在邮箱设置页完成绑定:

提交信息使用 type(module): message 格式,例如:
然后从 fork 分支向 apache/hugegraph:master 创建 Pull Request。说明问题、修改方法和实际运行的验证命令;界面变化应附截图。
处理 Review
CI 失败或 reviewer 要求修改时,在原分支继续提交并推送。需要同步上游时,可以 rebase:
不要使用普通 --force 覆盖远端分支。完成所有 CI 和 review 要求后,由项目 maintainer 合并 Pull Request。
Contributor Agreement 使用 ASF 官方流程,见贡献者协议。