blob: a3f907a3372b8436d51bac2f8ffcb00d30e4bae8 [file] [log] [blame]
<!doctype html><html lang=cn class=no-js><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=generator content="Hugo 0.102.3"><meta name=robots content="index, follow"><link rel="shortcut icon" href=/favicons/favicon.ico><link rel=apple-touch-icon href=/favicons/apple-touch-icon-180x180.png sizes=180x180><link rel=icon type=image/png href=/favicons/favicon-16x16.png sizes=16x16><link rel=icon type=image/png href=/favicons/favicon-32x32.png sizes=32x32><link rel=icon type=image/png href=/favicons/android-36x36.png sizes=36x36><link rel=icon type=image/png href=/favicons/android-48x48.png sizes=48x48><link rel=icon type=image/png href=/favicons/android-72x72.png sizes=72x72><link rel=icon type=image/png href=/favicons/android-96x96.png sizes=96x96><link rel=icon type=image/png href=/favicons/android-144x144.png sizes=144x144><link rel=icon type=image/png href=/favicons/android-192x192.png sizes=192x192><title>如何参与 HugeGraph 社区 | HugeGraph</title><meta name=description content="
TODO: translate this article to Chinese
Thanks for taking the time to contribute! As an open source project, HugeGraph is looking forward to be …"><meta property="og:title" content="如何参与 HugeGraph 社区"><meta property="og:description" content="TODO: translate this article to Chinese
Thanks for taking the time to contribute! As an open source project, HugeGraph is looking forward to be contributed from everyone, and we are also grateful to all the contributors.
The following is a contribution guide for HugeGraph:
1. Preparation 建议: 使用 GitHub desktop 可以大幅简化和改善你提交 PR/Commit 的过程, 特别适合新人
We can contribute by reporting issues, submitting code patches or any other feedback.
Before submitting the code, we need to do some preparation:"><meta property="og:type" content="article"><meta property="og:url" content="/cn/docs/contribution-guidelines/contribute/"><meta property="article:section" content="docs"><meta property="article:modified_time" content="2023-12-21T23:52:35+08:00"><meta property="og:site_name" content="HugeGraph"><meta itemprop=name content="如何参与 HugeGraph 社区"><meta itemprop=description content="TODO: translate this article to Chinese
Thanks for taking the time to contribute! As an open source project, HugeGraph is looking forward to be contributed from everyone, and we are also grateful to all the contributors.
The following is a contribution guide for HugeGraph:
1. Preparation 建议: 使用 GitHub desktop 可以大幅简化和改善你提交 PR/Commit 的过程, 特别适合新人
We can contribute by reporting issues, submitting code patches or any other feedback.
Before submitting the code, we need to do some preparation:"><meta itemprop=dateModified content="2023-12-21T23:52:35+08:00"><meta itemprop=wordCount content="824"><meta itemprop=keywords content><meta name=twitter:card content="summary"><meta name=twitter:title content="如何参与 HugeGraph 社区"><meta name=twitter:description content="TODO: translate this article to Chinese
Thanks for taking the time to contribute! As an open source project, HugeGraph is looking forward to be contributed from everyone, and we are also grateful to all the contributors.
The following is a contribution guide for HugeGraph:
1. Preparation 建议: 使用 GitHub desktop 可以大幅简化和改善你提交 PR/Commit 的过程, 特别适合新人
We can contribute by reporting issues, submitting code patches or any other feedback.
Before submitting the code, we need to do some preparation:"><link rel=preload href=/scss/main.min.14ea575cb35d93d46ff8681b2334f40fd46243c100c5c39f5a841b931fae2d40.css as=style><link href=/scss/main.min.14ea575cb35d93d46ff8681b2334f40fd46243c100c5c39f5a841b931fae2d40.css rel=stylesheet integrity><script src=https://code.jquery.com/jquery-3.5.1.min.js integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin=anonymous></script>
<link rel=stylesheet href=/css/prism.css><script type=application/javascript>var doNotTrack=!1;doNotTrack||(window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)},ga.l=+new Date,ga("create","UA-00000000-0","auto"),ga("send","pageview"))</script><script async src=https://www.google-analytics.com/analytics.js></script></head><body class=td-page><header><nav class="js-navbar-scroll navbar navbar-expand navbar-dark flex-column flex-md-row td-navbar"><a class=navbar-brand href=/cn/><span class=navbar-logo><svg id="图层_1" data-name="图层 1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 16 16"><defs><style>.cls-1{fill:none;stroke:#fff;stroke-miterlimit:10;stroke-width:.5px;opacity:.3}.cls-2{fill:#229efa}.cls-3{fill:#9948f7}.cls-4{fill:#33bc7a}.cls-5{fill:url(#未命名的渐变_3)}.cls-6{fill:url(#未命名的渐变_13)}.cls-7{fill:url(#未命名的渐变_11)}</style><linearGradient id="未命名的渐变_3" x1="6.16" y1="14.63" x2="6.16" y2="6.01" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#2e3192"/><stop offset="0" stop-color="#229efa"/><stop offset=".44" stop-color="#239cf8"/><stop offset=".6" stop-color="#2795f2"/><stop offset=".71" stop-color="#2d8ae8"/><stop offset=".81" stop-color="#3679d9"/><stop offset=".89" stop-color="#4263c6"/><stop offset=".95" stop-color="#5048af"/><stop offset="1" stop-color="#5c319b"/></linearGradient><linearGradient id="未命名的渐变_13" x1="10.75" y1="8.2" x2="4.49" y2="1.94" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#991146"/><stop offset="0" stop-color="#326b4e"/><stop offset=".02" stop-color="#3a685c"/><stop offset=".07" stop-color="#506180"/><stop offset=".13" stop-color="#645aa0"/><stop offset=".19" stop-color="#7554bc"/><stop offset=".26" stop-color="#8250d2"/><stop offset=".35" stop-color="#8d4ce3"/><stop offset=".45" stop-color="#944aee"/><stop offset=".6" stop-color="#9848f5"/><stop offset="1" stop-color="#9948f7"/></linearGradient><linearGradient id="未命名的渐变_11" x1="15.34" y1="6.67" x2="7.88" y2="10.98" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#33bc7a"/><stop offset=".45" stop-color="#32ba7a"/><stop offset=".61" stop-color="#2fb37c"/><stop offset=".73" stop-color="#29a87e"/><stop offset=".82" stop-color="#219782"/><stop offset=".9" stop-color="#168186"/><stop offset=".97" stop-color="#09668b"/><stop offset="1" stop-color="#03598e"/></linearGradient></defs><title>logo</title><rect class="cls-1" x="-143.14" y="-373.46" width="597.8" height="424.44"/><circle class="cls-2" cx="12.02" cy="1.83" r="1.33"/><circle class="cls-3" cx="12.02" cy="14.17" r="1.33"/><circle class="cls-4" cx="1.33" cy="8" r="1.33"/><path class="cls-5" d="M7.91 10h0a2.65 2.65.0 01-.23-3.74A1.75 1.75.0 017.91 6h0A2.66 2.66.0 014.4 6h0a1.81 1.81.0 01.24.24A2.65 2.65.0 014.4 10h0a2.62 2.62.0 00-.89 2 2.65 2.65.0 104.4-2z"/><path class="cls-6" d="M12.19 5.49a2.78 2.78.0 01-.5.11A2.64 2.64.0 018.76 3.5h0a2.65 2.65.0 10-2.6 3.17A2.6 2.6.0 007 6.53H7a2.65 2.65.0 013.44 2 2.94 2.94.0 010-.51 2.65 2.65.0 011.75-2.53z"/><path class="cls-7" d="M13 5.35a2.64 2.64.0 00-2.59 2.12h0a3 3 0 01-.08.32A2.65 2.65.0 017.54 9.58a2.86 2.86.0 00.37.41h0a2.63 2.63.0 01.9 2 2.84 2.84.0 01-.05.51 2.64 2.64.0 013.12-2.06l.32.08h0a2.6 2.6.0 00.84.14 2.65 2.65.0 100-5.3z"/></svg></span><span class=font-weight-bold>HugeGraph</span></a><div class="td-navbar-nav-scroll ml-md-auto" id=main_navbar><ul class="navbar-nav mt-2 mt-lg-0"><li class="nav-item mr-4 mb-2 mb-lg-0"><a class=nav-link href=/cn/docs/><i class='fas fa-book pr-2'></i><span>Documentation</span></a></li><li class="nav-item mr-4 mb-2 mb-lg-0"><a class=nav-link href=https://github.com/apache/incubator-hugegraph target=_blank><i class='fab fa-github pr-2'></i><span>GitHub</span></a></li><li class="nav-item mr-4 mb-2 mb-lg-0"><a class=nav-link href=/cn/docs/download/download/><i class='fas fa-download pr-2'></i><span>Download</span></a></li><li class="nav-item mr-4 mb-2 mb-lg-0"><a class=nav-link href=/cn/community/><span>Community</span></a></li><li class="nav-item dropdown mr-4 d-none d-lg-block"><a class="nav-link dropdown-toggle" href=# id=navbarDropdown role=button data-toggle=dropdown aria-haspopup=true aria-expanded=false>中文</a><div class=dropdown-menu aria-labelledby=navbarDropdownMenuLink><a class=dropdown-item href=/docs/contribution-guidelines/contribute/>English</a></div></li></ul></div><div class="navbar-nav d-none d-lg-block"></div></nav></header><div class="container-fluid td-outer"><div class=td-main><div class="row flex-xl-nowrap"><aside class="col-12 col-md-3 col-xl-2 td-sidebar d-print-none"><div id=td-sidebar-menu class=td-sidebar__inner><div id=content-mobile><form class="td-sidebar__search d-flex align-items-center"><button class="btn btn-link td-sidebar__toggle d-md-none p-0 ml-3 fas fa-bars" type=button data-toggle=collapse data-target=#td-section-nav aria-controls=td-docs-nav aria-expanded=false aria-label="Toggle section navigation"></button></form></div><div id=content-desktop></div><nav class="collapse td-sidebar-nav" id=td-section-nav><div class="nav-item dropdown d-block d-lg-none"><a class="nav-link dropdown-toggle" href=# id=navbarDropdown role=button data-toggle=dropdown aria-haspopup=true aria-expanded=false>中文</a><div class=dropdown-menu aria-labelledby=navbarDropdownMenuLink><a class=dropdown-item href=/docs/contribution-guidelines/contribute/>English</a></div></div><ul class="td-sidebar-nav__section pr-md-3 ul-0"><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child active-path" id=m-cndocs-li><a href=/cn/docs/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section tree-root" id=m-cndocs><span>Documentation</span></a><ul class=ul-1><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsintroductionreadme-li><a href=/cn/docs/introduction/readme/ title="Introduction with HugeGraph" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsintroductionreadme><span>Introduction</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsdownloaddownload-li><a href=/cn/docs/download/download/ title="下载 Apache HugeGraph (Incubating)" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsdownloaddownload><span>Download</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-cndocsquickstart-li><a href=/cn/docs/quickstart/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-cndocsquickstart><span>Quick Start</span></a><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsquickstarthugegraph-server-li><a href=/cn/docs/quickstart/hugegraph-server/ title="HugeGraph-Server Quick Start" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsquickstarthugegraph-server><span>安装/构建 HugeGraph-Server</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsquickstarthugegraph-loader-li><a href=/cn/docs/quickstart/hugegraph-loader/ title="HugeGraph-Loader Quick Start" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsquickstarthugegraph-loader><span>使用 Loader/Spark 实时导入数据</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsquickstarthugegraph-hubble-li><a href=/cn/docs/quickstart/hugegraph-hubble/ title="HugeGraph-Hubble Quick Start" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsquickstarthugegraph-hubble><span>使用 Hubble 实现图可视化</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsquickstarthugegraph-ai-li><a href=/cn/docs/quickstart/hugegraph-ai/ title="HugeGraph-AI Quick Start" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsquickstarthugegraph-ai><span>使用 HugeGraph-AI</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsquickstarthugegraph-client-li><a href=/cn/docs/quickstart/hugegraph-client/ title="HugeGraph-Client Quick Start" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsquickstarthugegraph-client><span>使用 HugeGraph-Client 开发</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsquickstarthugegraph-tools-li><a href=/cn/docs/quickstart/hugegraph-tools/ title="HugeGraph-Tools Quick Start" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsquickstarthugegraph-tools><span>使用 HugeGraph-Tools 导出/管理图</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsquickstarthugegraph-computer-li><a href=/cn/docs/quickstart/hugegraph-computer/ title="HugeGraph-Computer Quick Start" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsquickstarthugegraph-computer><span>使用 Computer 进行 OLAP 分析</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-cndocsconfig-li><a href=/cn/docs/config/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-cndocsconfig><span>Config</span></a><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsconfigconfig-guide-li><a href=/cn/docs/config/config-guide/ title="HugeGraph 配置" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsconfigconfig-guide><span>参数配置</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsconfigconfig-option-li><a href=/cn/docs/config/config-option/ title="HugeGraph 配置项" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsconfigconfig-option><span>配置项列表</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsconfigconfig-authentication-li><a href=/cn/docs/config/config-authentication/ title="HugeGraph 内置用户权限与扩展权限配置及使用" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsconfigconfig-authentication><span>权限配置</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsconfigconfig-https-li><a href=/cn/docs/config/config-https/ title="配置 HugeGraphServer 使用 https 协议" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsconfigconfig-https><span>配置 HTTPS</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsconfigconfig-computer-li><a href=/cn/docs/config/config-computer/ title="HugeGraph-Computer 配置" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsconfigconfig-computer><span>图计算 Computer 配置</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-cndocsclients-li><a href=/cn/docs/clients/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-cndocsclients><span>API</span></a><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-cndocsclientsrestful-api-li><a href=/cn/docs/clients/restful-api/ title="HugeGraph RESTful API" class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-cndocsclientsrestful-api><span>RESTful API</span></a><ul class="ul-3 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apischema-li><a href=/cn/docs/clients/restful-api/schema/ title="Schema API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apischema><span>Schema</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apipropertykey-li><a href=/cn/docs/clients/restful-api/propertykey/ title="PropertyKey API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apipropertykey><span>PropertyKey</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apivertexlabel-li><a href=/cn/docs/clients/restful-api/vertexlabel/ title="VertexLabel API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apivertexlabel><span>VertexLabel</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apiedgelabel-li><a href=/cn/docs/clients/restful-api/edgelabel/ title="EdgeLabel API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apiedgelabel><span>EdgeLabel</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apiindexlabel-li><a href=/cn/docs/clients/restful-api/indexlabel/ title="IndexLabel API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apiindexlabel><span>IndexLabel</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apirebuild-li><a href=/cn/docs/clients/restful-api/rebuild/ title="Rebuild API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apirebuild><span>Rebuild</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apivertex-li><a href=/cn/docs/clients/restful-api/vertex/ title="Vertex API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apivertex><span>Vertex</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apiedge-li><a href=/cn/docs/clients/restful-api/edge/ title="Edge API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apiedge><span>Edge</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apitraverser-li><a href=/cn/docs/clients/restful-api/traverser/ title="Traverser API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apitraverser><span>Traverser</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apirank-li><a href=/cn/docs/clients/restful-api/rank/ title="Rank API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apirank><span>Rank</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apivariable-li><a href=/cn/docs/clients/restful-api/variable/ title="Variable API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apivariable><span>Variable</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apigraphs-li><a href=/cn/docs/clients/restful-api/graphs/ title="Graphs API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apigraphs><span>Graphs</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apitask-li><a href=/cn/docs/clients/restful-api/task/ title="Task API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apitask><span>Task</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apigremlin-li><a href=/cn/docs/clients/restful-api/gremlin/ title="Gremlin API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apigremlin><span>Gremlin</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apicypher-li><a href=/cn/docs/clients/restful-api/cypher/ title="Cypher API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apicypher><span>Cypher</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apiauth-li><a href=/cn/docs/clients/restful-api/auth/ title="Authentication API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apiauth><span>Authentication</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apimetrics-li><a href=/cn/docs/clients/restful-api/metrics/ title="Metrics API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apimetrics><span>Metrics</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsrestful-apiother-li><a href=/cn/docs/clients/restful-api/other/ title="Other API" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsrestful-apiother><span>Other</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientshugegraph-client-li><a href=/cn/docs/clients/hugegraph-client/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientshugegraph-client><span>HugeGraph Java Client</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsclientsgremlin-console-li><a href=/cn/docs/clients/gremlin-console/ title=Gremlin-Console class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsclientsgremlin-console><span>Gremlin Console</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-cndocsguides-li><a href=/cn/docs/guides/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-cndocsguides><span>GUIDES</span></a><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsguidesarchitectural-li><a href=/cn/docs/guides/architectural/ title="HugeGraph Architecture Overview" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsguidesarchitectural><span>架构概览</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsguidesdesgin-concept-li><a href=/cn/docs/guides/desgin-concept/ title="HugeGraph Design Concepts" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsguidesdesgin-concept><span>设计理念(legacy)</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsguidescustom-plugin-li><a href=/cn/docs/guides/custom-plugin/ title="HugeGraph Plugin 机制及插件扩展流程" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsguidescustom-plugin><span>HugeGraph Plugin</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsguidesbackup-restore-li><a href=/cn/docs/guides/backup-restore/ title="Backup Restore" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsguidesbackup-restore><span>备份 & 恢复</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsguidesfaq-li><a href=/cn/docs/guides/faq/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsguidesfaq><span>FAQ</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsguidessecurity-li><a href=/cn/docs/guides/security/ title=报告安全问题 class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsguidessecurity><span>安全公告</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-cndocslanguage-li><a href=/cn/docs/language/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-cndocslanguage><span>QUERY LANGUAGE</span></a><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocslanguagehugegraph-gremlin-li><a href=/cn/docs/language/hugegraph-gremlin/ title="HugeGraph Gremlin" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocslanguagehugegraph-gremlin><span>Gremlin Query Language</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocslanguagehugegraph-example-li><a href=/cn/docs/language/hugegraph-example/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocslanguagehugegraph-example><span>HugeGraph Examples</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-cndocsperformance-li><a href=/cn/docs/performance/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-cndocsperformance><span>PERFORMANCE</span></a><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsperformancehugegraph-benchmark-056-li><a href=/cn/docs/performance/hugegraph-benchmark-0.5.6/ title="HugeGraph BenchMark Performance" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsperformancehugegraph-benchmark-056><span>HugeGraph 基准测试</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-cndocsperformanceapi-preformance-li><a href=/cn/docs/performance/api-preformance/ title="HugeGraph-API Performance" class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-cndocsperformanceapi-preformance><span>HugeGraph-API 性能</span></a><ul class="ul-3 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsperformanceapi-preformancehugegraph-api-056-rocksdb-li><a href=/cn/docs/performance/api-preformance/hugegraph-api-0.5.6-rocksdb/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsperformanceapi-preformancehugegraph-api-056-rocksdb><span>v0.5.6 Stand-alone(RocksDB)</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsperformanceapi-preformancehugegraph-api-056-cassandra-li><a href=/cn/docs/performance/api-preformance/hugegraph-api-0.5.6-cassandra/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsperformanceapi-preformancehugegraph-api-056-cassandra><span>v0.5.6 Cluster(Cassandra)</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsperformancehugegraph-loader-performance-li><a href=/cn/docs/performance/hugegraph-loader-performance/ title="HugeGraph-Loader Performance" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsperformancehugegraph-loader-performance><span>HugeGraph-Loader 性能</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocsperformancehugegraph-benchmark-044-li><a href=/cn/docs/performance/hugegraph-benchmark-0.4.4/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocsperformancehugegraph-benchmark-044><span></span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child active-path" id=m-cndocscontribution-guidelines-li><a href=/cn/docs/contribution-guidelines/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-cndocscontribution-guidelines><span>Contribution Guidelines</span></a><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocscontribution-guidelinescontribute-li><a href=/cn/docs/contribution-guidelines/contribute/ class="align-left pl-0 active td-sidebar-link td-sidebar-link__page" id=m-cndocscontribution-guidelinescontribute><span class=td-sidebar-nav-active-item>如何参与 HugeGraph 社区</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocscontribution-guidelinessubscribe-li><a href=/cn/docs/contribution-guidelines/subscribe/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocscontribution-guidelinessubscribe><span>订阅社区邮箱</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocscontribution-guidelinesvalidate-release-li><a href=/cn/docs/contribution-guidelines/validate-release/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocscontribution-guidelinesvalidate-release><span>验证 Apache 发版</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocscontribution-guidelineshugegraph-server-idea-setup-li><a href=/cn/docs/contribution-guidelines/hugegraph-server-idea-setup/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocscontribution-guidelineshugegraph-server-idea-setup><span>在 IDEA 中配置 Server 开发环境</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocscontribution-guidelinescommitter-guidelines-li><a href=/cn/docs/contribution-guidelines/committer-guidelines/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocscontribution-guidelinescommitter-guidelines><span>Apache HugeGraph Committer 指南</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section with-child" id=m-cndocschangelog-li><a href=/cn/docs/changelog/ class="align-left pl-0 td-sidebar-link td-sidebar-link__section" id=m-cndocschangelog><span>CHANGELOGS</span></a><ul class="ul-2 foldable"><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocschangeloghugegraph-0120-release-notes-li><a href=/cn/docs/changelog/hugegraph-0.12.0-release-notes/ title="HugeGraph 0.12 Release Notes" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocschangeloghugegraph-0120-release-notes><span>Release-0.12.0</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocschangeloghugegraph-100-release-notes-li><a href=/cn/docs/changelog/hugegraph-1.0.0-release-notes/ title="HugeGraph 1.0.0 Release Notes" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocschangeloghugegraph-100-release-notes><span>Release-1.0.0</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocschangeloghugegraph-120-release-notes-li><a href=/cn/docs/changelog/hugegraph-1.2.0-release-notes/ title="HugeGraph 1.2.0 Release Notes" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocschangeloghugegraph-120-release-notes><span>Release-1.2.0</span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocschangeloghugegraph-130-release-notes-li><a href=/cn/docs/changelog/hugegraph-1.3.0-release-notes/ title="HugeGraph 1.3.0 Release Notes" class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocschangeloghugegraph-130-release-notes><span>Release-1.3.0</span></a></li></ul></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocscla-li><a href=/cn/docs/cla/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocscla><span></span></a></li><li class="td-sidebar-nav__section-title td-sidebar-nav__section without-child" id=m-cndocssummary-li><a href=/cn/docs/summary/ class="align-left pl-0 td-sidebar-link td-sidebar-link__page" id=m-cndocssummary><span></span></a></li></ul></li></ul></nav></div></aside><aside class="d-none d-xl-block col-xl-2 td-sidebar-toc d-print-none"><div class="td-page-meta ml-2 pb-1 pt-2 mb-0"><a href=https://github.com/apache/incubator-hugegraph-doc/tree/master/content/cn/docs/contribution-guidelines/contribute.md class=td-page-meta--view target=_blank rel=noopener><i class="fa fa-file-alt fa-fw"></i> View page source</a>
<a href=https://github.com/apache/incubator-hugegraph-doc/edit/master/content/cn/docs/contribution-guidelines/contribute.md class=td-page-meta--edit target=_blank rel=noopener><i class="fa fa-edit fa-fw"></i> Edit this page</a>
<a href="https://github.com/apache/incubator-hugegraph-doc/new/master/content/cn/docs/contribution-guidelines/contribute.md?filename=change-me.md&value=---%0Atitle%3A+%22Long+Page+Title%22%0AlinkTitle%3A+%22Short+Nav+Title%22%0Aweight%3A+100%0Adescription%3A+%3E-%0A+++++Page+description+for+heading+and+indexes.%0A---%0A%0A%23%23+Heading%0A%0AEdit+this+template+to+create+your+new+page.%0A%0A%2A+Give+it+a+good+name%2C+ending+in+%60.md%60+-+e.g.+%60getting-started.md%60%0A%2A+Edit+the+%22front+matter%22+section+at+the+top+of+the+page+%28weight+controls+how+its+ordered+amongst+other+pages+in+the+same+directory%3B+lowest+number+first%29.%0A%2A+Add+a+good+commit+message+at+the+bottom+of+the+page+%28%3C80+characters%3B+use+the+extended+description+field+for+more+detail%29.%0A%2A+Create+a+new+branch+so+you+can+preview+your+new+file+and+request+a+review+via+Pull+Request.%0A" class=td-page-meta--child target=_blank rel=noopener><i class="fa fa-edit fa-fw"></i> Create child page</a>
<a href="https://github.com/apache/incubator-hugegraph-doc/issues/new?title=%e5%a6%82%e4%bd%95%e5%8f%82%e4%b8%8e%20HugeGraph%20%e7%a4%be%e5%8c%ba" class=td-page-meta--issue target=_blank rel=noopener><i class="fab fa-github fa-fw"></i> Create documentation issue</a>
<a href=https://github.com/apache/incubator-hugegraph/issues/new class=td-page-meta--project-issue target=_blank rel=noopener><i class="fas fa-tasks fa-fw"></i> Create project issue</a>
<a id=print href=/cn/docs/contribution-guidelines/_print/><i class="fa fa-print fa-fw"></i> Print entire section</a></div><div class=td-toc><nav id=TableOfContents><ul><li><a href=#1-preparation>1. Preparation</a></li><li><a href=#2-create-an-issue-on-github>2. Create an Issue on GitHub</a></li><li><a href=#3-make-changes-of-code-locally>3. Make changes of code locally</a><ul><li></li></ul></li><li><a href=#4-create-a-pull-request>4. Create a Pull Request</a></li><li><a href=#5-code-review>5. Code review</a></li><li><a href=#6-more-changes-after-review>6. More changes after review</a></li></ul></nav></div></aside><main class="col-12 col-md-9 col-xl-8 pl-md-5" role=main><nav aria-label=breadcrumb class=td-breadcrumbs><ol class=breadcrumb><li class=breadcrumb-item><a href=/cn/docs/>Documentation</a></li><li class=breadcrumb-item><a href=/cn/docs/contribution-guidelines/>Contribution Guidelines</a></li><li class="breadcrumb-item active" aria-current=page><a href=/cn/docs/contribution-guidelines/contribute/>如何参与 HugeGraph 社区</a></li></ol></nav><div class=td-content><h1>如何参与 HugeGraph 社区</h1><header class=article-meta></header><blockquote><p>TODO: translate this article to Chinese</p></blockquote><p>Thanks for taking the time to contribute! As an open source project, HugeGraph is looking forward to be contributed from everyone, and we are also grateful to all the contributors.</p><p>The following is a contribution guide for HugeGraph:</p><img width=884 alt=image src=https://user-images.githubusercontent.com/9625821/159643158-8bf72c0a-93c3-4a58-8912-7b2ab20ced1d.png><h2 id=1-preparation>1. Preparation</h2><p><strong>建议</strong>: 使用 <a href=https://desktop.github.com/>GitHub desktop</a> 可以大幅简化和改善你提交 PR/Commit 的过程, 特别适合新人</p><p>We can contribute by reporting issues, submitting code patches or any other feedback.</p><p>Before submitting the code, we need to do some preparation:</p><ol><li><p>Sign up or login to GitHub: <a href=https://github.com>https://github.com</a></p></li><li><p>Fork HugeGraph repo from GitHub: <a href=https://github.com/apache/hugegraph/fork>https://github.com/apache/incubator-hugegraph/fork</a></p></li><li><p>Clone code from fork repo to local: <a href=https://github.com/$%7BGITHUB_USER_NAME%7D/hugegraph>https://github.com/${GITHUB_USER_NAME}/hugegraph</a></p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-shell data-lang=shell><span style=display:flex><span><span style=color:#8f5902;font-style:italic># clone code from remote to local repo</span>
</span></span><span style=display:flex><span>git clone https://github.com/<span style=color:#4e9a06>${</span><span style=color:#000>GITHUB_USER_NAME</span><span style=color:#4e9a06>}</span>/hugegraph
</span></span></code></pre></div></li><li><p>Configure local HugeGraph repo</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-shell data-lang=shell><span style=display:flex><span><span style=color:#204a87>cd</span> hugegraph
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic># add upstream to synchronize the latest code</span>
</span></span><span style=display:flex><span>git remote add hugegraph https://github.com/apache/hugegraph
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic># set name and email to push code to github</span>
</span></span><span style=display:flex><span>git config user.name <span style=color:#4e9a06>&#34;{full-name}&#34;</span> <span style=color:#8f5902;font-style:italic># like &#34;Jermy Li&#34;</span>
</span></span><span style=display:flex><span>git config user.email <span style=color:#4e9a06>&#34;{email-address-of-github}&#34;</span> <span style=color:#8f5902;font-style:italic># like &#34;jermy@apache.org&#34;</span>
</span></span></code></pre></div></li></ol><h2 id=2-create-an-issue-on-github>2. Create an Issue on GitHub</h2><p>If you encounter bugs or have any questions, please go to <a href=https://github.com/apache/incubator-hugegraph/issues>GitHub Issues</a> to report them and feel free to <a href=https://github.com/apache/hugegraph/issues/new>create an issue</a>.</p><h2 id=3-make-changes-of-code-locally>3. Make changes of code locally</h2><h4 id=31-create-a-new-branch>3.1 Create a new branch</h4><p>Please don&rsquo;t use master branch for development. We should create a new branch instead:</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-shell data-lang=shell><span style=display:flex><span><span style=color:#8f5902;font-style:italic># checkout master branch</span>
</span></span><span style=display:flex><span>git checkout master
</span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic># pull the latest code from official hugegraph</span>
</span></span><span style=display:flex><span>git pull hugegraph
</span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic># create new branch: bugfix-branch</span>
</span></span><span style=display:flex><span>git checkout -b bugfix-branch
</span></span></code></pre></div><h4 id=32-change-the-code>3.2 Change the code</h4><p>Assume that we need to modify some files like &ldquo;HugeGraph.java&rdquo; and &ldquo;HugeFactory.java&rdquo;:</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-shell data-lang=shell><span style=display:flex><span><span style=color:#8f5902;font-style:italic># modify code to fix a bug</span>
</span></span><span style=display:flex><span>vim hugegraph-core/src/main/java/org/apache/hugegraph/HugeGraph.java
</span></span><span style=display:flex><span>vim hugegraph-core/src/main/java/org/apache/hugegraph/HugeFactory.java
</span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic># run test locally (optional)</span>
</span></span><span style=display:flex><span>mvn <span style=color:#204a87>test</span> -Pcore-test,memory
</span></span></code></pre></div><p>Note: In order to be consistent with the code style easily, if you use <a href=https://www.jetbrains.com/idea/>IDEA</a> as your IDE, you can directly <a href=https://www.jetbrains.com/help/idea/configuring-code-style.html>import</a> our code style <a href=./hugegraph-style.xml>configuration file</a>.</p><h5 id=321-添加第三方依赖>3.2.1 添加第三方依赖</h5><p>如果我们要在 <code>HugeGraph</code> 项目中添加新的第三方依赖, 我们需要做下面的几件事情:</p><ol><li>找到第三方依赖的仓库,将依赖的 <code>license</code> 文件放到 <a href=https://github.com/apache/incubator-hugegraph/tree/master/hugegraph-server/hugegraph-dist/release-docs/licenses>./hugegraph-dist/release-docs/licenses/</a> 路径下。</li><li><a href=https://github.com/apache/incubator-hugegraph/blob/master/hugegraph-server/hugegraph-dist/release-docs/LICENSE>./hugegraph-dist/release-docs/LICENSE</a> 中声明该依赖的 <code>LICENSE</code> 信息。</li><li>找到仓库里的 NOTICE 文件,将其追加到 <a href=https://github.com/apache/incubator-hugegraph/blob/master/hugegraph-server/hugegraph-dist/release-docs/NOTICE>./hugegraph-dist/release-docs/NOTICE</a> 文件后面(如果没有NOTICE文件则跳过这一步)。</li><li>本地执行<a href=https://github.com/apache/incubator-hugegraph/blob/master/hugegraph-server/hugegraph-dist/scripts/dependency/regenerate_known_dependencies.sh>./hugegraph-dist/scripts/dependency/regenerate_known_dependencies.sh</a> 脚本来更新依赖列表<a href=https://github.com/apache/incubator-hugegraph/blob/master/hugegraph-server/hugegraph-dist/scripts/dependency/known-dependencies.txt>known-dependencies.txt</a> (或者手动更新)。</li></ol><p><strong>例如</strong>:在项目中引入了第三方新依赖 -> <code>ant-1.9.1.jar</code></p><ul><li>项目源码位于:https://github.com/apache/ant/tree/rel/1.9.1</li><li>LICENSE 文件:https://github.com/apache/ant/blob/rel/1.9.1/LICENSE</li><li>NOTICE 文件:https://github.com/apache/ant/blob/rel/1.9.1/NOTICE</li></ul><p><code>ant-1.9.1.jar</code> 的 license 信息需要在 LICENSE 文件中指定,notice 信息需要在 NOTICE 文件中指定。 ant-1.9.1.jar 对应的详细 LICENSE 文件需要复制到我们的 licenses/ 目录下。最后更新 known-dependencies.txt 文件。</p><h4 id=33-commit-changes-to-git-repo>3.3 Commit changes to git repo</h4><p>After the code has been completed, we submit them to the local git repo:</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-shell data-lang=shell><span style=display:flex><span><span style=color:#8f5902;font-style:italic># add files to local git index</span>
</span></span><span style=display:flex><span>git add hugegraph-core/src/main/java/org/apache/hugegraph/HugeGraph.java
</span></span><span style=display:flex><span>git add hugegraph-core/src/main/java/org/apache/hugegraph/HugeFactory.java
</span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic># commit to local git repo</span>
</span></span><span style=display:flex><span>git commit
</span></span></code></pre></div><p>Please edit the commit message after running <code>git commit</code>, we can explain what and how to fix a bug or implement a feature, the following is an example:</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-sh data-lang=sh><span style=display:flex><span>Fix bug: run deploy multiple <span style=color:#204a87>times</span>
</span></span><span style=display:flex><span>
</span></span><span style=display:flex><span>fix <span style=color:#8f5902;font-style:italic>#ISSUE_ID</span>
</span></span></code></pre></div><blockquote><p>Please remember to fill in the issue id, which was generated by GitHub after issue creation.</p></blockquote><h4 id=34-push-commit-to-github-fork-repo>3.4 Push commit to GitHub fork repo</h4><p>Push the local commit to GitHub fork repo:</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-shell data-lang=shell><span style=display:flex><span><span style=color:#8f5902;font-style:italic># push the local commit to fork repo</span>
</span></span><span style=display:flex><span>git push origin bugfix-branch:bugfix-branch
</span></span></code></pre></div><p>Note that since GitHub requires submitting code through <code>username + token</code> (instead of using <code>username + password</code> directly), you need to create a GitHub token from <a href=https://github.com/settings/tokens>https://github.com/settings/tokens</a>:
<img width=1280 alt=image src=https://user-images.githubusercontent.com/9625821/163524204-7fe0e6bf-9c8b-4b1a-ac65-6a0ac423eb16.png></p><h2 id=4-create-a-pull-request>4. Create a Pull Request</h2><p>Go to the web page of GitHub fork repo, there would be a chance to create a Pull Request after pushing to a new branch, just click button &ldquo;Compare & pull request&rdquo; to do it. Then edit the description for proposed changes, which can just be copied from the commit message.</p><p>Note: please make sure the email address you used to submit the code is bound to the GitHub account. For how to bind the email address, please refer to <a href=https://github.com/settings/emails>https://github.com/settings/emails</a>:
<img width=1280 alt=image src=https://user-images.githubusercontent.com/9625821/163522445-2a50a72a-dea2-434f-9868-3a0d40d0d037.png></p><h2 id=5-code-review>5. Code review</h2><p>Maintainers will start the code review after all the <strong>automatic</strong> checks are passed:</p><ul><li>Check: Contributor License Agreement is signed</li><li>Check: Travis CI builds is passed (automatically Test and Deploy)</li></ul><p>The commit will be accepted and merged if there is no problem after review.</p><p>Please click on &ldquo;Details&rdquo; to find the problem if any check does not pass.</p><p>If there are checks not passed or changes requested, then continue to modify the code and push again.</p><h2 id=6-more-changes-after-review>6. More changes after review</h2><p>If we have not passed the review, don&rsquo;t be discouraged. Usually a commit needs to be reviewed several times before being accepted! Please follow the review comments and make further changes.</p><p>After the further changes, we submit them to the local repo:</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-shell data-lang=shell><span style=display:flex><span><span style=color:#8f5902;font-style:italic># commit all updated files in a new commit,</span>
</span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic># please feel free to enter any appropriate commit message, note that</span>
</span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic># we will squash all commits in the pull request as one commit when</span>
</span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic># merging into the master branch.</span>
</span></span><span style=display:flex><span>git commit -a
</span></span></code></pre></div><blockquote><p>If there are conflicts that prevent the code from being merged, we need to rebase on master branch:</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-shell data-lang=shell><span style=display:flex><span><span style=color:#8f5902;font-style:italic># synchronize the latest code</span>
</span></span><span style=display:flex><span>git checkout master
</span></span><span style=display:flex><span>git pull hugegraph
</span></span><span style=display:flex><span><span style=color:#8f5902;font-style:italic># rebase on master</span>
</span></span><span style=display:flex><span>git checkout bugfix-branch
</span></span><span style=display:flex><span>git rebase -i master
</span></span></code></pre></div></blockquote><p>And push it to GitHub fork repo again:</p><div class=highlight><pre tabindex=0 style=background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-shell data-lang=shell><span style=display:flex><span><span style=color:#8f5902;font-style:italic># force push the local commit to fork repo</span>
</span></span><span style=display:flex><span>git push -f origin bugfix-branch:bugfix-branch
</span></span></code></pre></div><p>GitHub will automatically update the Pull Request after we push it, just wait for code review.</p><style>.feedback--answer{display:inline-block}.feedback--answer-no{margin-left:1em}.feedback--response{display:none;margin-top:1em}.feedback--response__visible{display:block}</style><script>const yesButton=document.querySelector(".feedback--answer-yes"),noButton=document.querySelector(".feedback--answer-no"),yesResponse=document.querySelector(".feedback--response-yes"),noResponse=document.querySelector(".feedback--response-no"),disableButtons=()=>{yesButton.disabled=!0,noButton.disabled=!0},sendFeedback=e=>{if(typeof ga!="function")return;const t={command:"send",hitType:"event",category:"Helpful",action:"click",label:window.location.pathname,value:e};ga(t.command,t.hitType,t.category,t.action,t.label,t.value)};yesButton.addEventListener("click",()=>{yesResponse.classList.add("feedback--response__visible"),disableButtons(),sendFeedback(1)}),noButton.addEventListener("click",()=>{noResponse.classList.add("feedback--response__visible"),disableButtons(),sendFeedback(0)})</script><br><div class="text-muted mt-5 pt-3 border-top">Last modified December 21, 2023: <a href=https://github.com/apache/incubator-hugegraph-doc/commit/4f07fcd5836830904ae72a50a342fb8726866f65>chore(website): fix link path (#309) (4f07fcd5)</a></div></div></main></div></div><footer class="bg-dark py-3 row d-print-none"><div class=footer-container><div class="row bg-dark"><div class=col-1></div><div class="col-4 text-center container-center"><div class=footer-row><a href=https://www.apache.org><div class=footer-apache-logo><svg id="Layer_2" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 7127.6 2890" enable-background="new 0 0 7127.6 2890"><path fill="#6d6e71" d="M7104.7 847.8c15.3 15.3 22.9 33.7 22.9 55.2s-7.6 39.9-22.9 55.4c-15.3 15.4-33.8 23.1-55.6 23.1s-40.2-7.6-55.4-22.9c-15.1-15.3-22.7-33.7-22.7-55.2s7.6-39.9 22.9-55.4c15.3-15.4 33.7-23.1 55.4-23.1C7070.9 824.9 7089.4 832.5 7104.7 847.8zM7098.1 951.9c13.3-13.6 20-29.8 20-48.7s-6.6-35-19.8-48.5c-13.2-13.4-29.4-20.1-48.6-20.1-19.2.0-35.4 6.7-48.7 20.2s-19.9 29.7-19.9 48.7 6.6 35.2 19.7 48.6c13.1 13.4 29.3 20.1 48.5 20.1S7084.7 965.4 7098.1 951.9zm-11-63.8c0 14-6.1 22.8-18.4 26.4l22.5 30.5H7073l-20.3-28.3h-18.6V945h-14.7v-84.6h31.8c12.8.0 22 2.2 27.6 6.6C7084.4 871.4 7087.1 878.4 7087.1 888.1zM7068.2 9e2c3-2.4 4.4-6.5 4.4-12s-1.5-9.4-4.5-11.6-8.4-3.2-16-3.2h-18v30.5h17.5C7059.7 903.6 7065.3 902.4 7068.2 9e2z"/><path fill="#6d6e71" d="M1803.6 499.8v155.4h-20V499.8h-56.8v-19.2h133.9v19.2H1803.6z"/><path fill="#6d6e71" d="M2082.2 655.2v-76.9H1977v76.9h-20V480.5h20v78.9h105.2v-78.9h20v174.7h-20z"/><path fill="#6d6e71" d="M2241.4 499.8v57.4h88.1v19.2h-88.1v59.8h101.8v19h-121.8V480.5H2340v19.2H2241.4z"/><path fill="#d22128" d="M1574.5 1852.4l417.3-997.6h80.1l417.3 997.6h-105.4l-129.3-311.9h-448.2l-127.9 311.9H1574.5zM2032.6 970l-205.1 493.2h404.7L2032.6 970z"/><path fill="#d22128" d="M2596.9 1852.4V854.8H3010c171.4.0 295.1 158.8 295.1 313.3.0 163-115.2 316.1-286.6 316.1h-324.6v368.1h-97zm97-455.3h318.9c118 0 193.9-108.2 193.9-229 0-125.1-92.7-226.2-202.3-226.2h-310.5v455.2z"/><path fill="#d22128" d="M3250.5 1852.4l417.3-997.6h80.1l417.3 997.6h-105.4l-129.3-311.9h-448.2l-127.9 311.9H3250.5zM3708.6 970l-205.1 493.2h404.7L3708.6 970z"/><path fill="#d22128" d="M4637.3 849.1c177 0 306.3 89.9 368.1 217.8l-78.7 47.8c-63.2-132.1-186.9-177-295.1-177-238.9.0-369.5 213.6-369.5 414.5.0 220.6 161.6 420.1 373.7 420.1 112.4.0 244.5-56.2 307.7-185.5l81.5 42.1c-64.6 148.9-241.7 231.8-394.8 231.8-274 0-466.5-261.3-466.5-514.2C4163.8 1106.3 4336.6 849.1 4637.3 849.1z"/><path fill="#d22128" d="M5949.1 854.8v997.6h-98.4v-466.5h-591.5v466.5h-96.9V854.8h96.9v444h591.5v-444H5949.1z"/><path fill="#d22128" d="M6844.6 1765.2v87.1h-670.2V854.8H6832v87.1h-560.6v359.7h489v82.9h-489v380.8H6844.6z"/><path fill="#6d6e71" d="M1667.6 2063.6c11.8 3.5 22.2 8.3 31 14.2l-10.3 22.6c-9-6-18.6-10.4-28.9-13.4-10.2-2.9-20-4.4-29.2-4.4-13.6.0-24.5 2.4-32.6 7.3s-12.2 11.8-12.2 20.7c0 7.6 2.3 14 6.8 19s10.2 8.9 17 11.7c6.8 2.8 16.1 6 28 9.6 14.4 4.6 26 8.9 34.7 12.9 8.8 4 16.3 9.9 22.5 17.8 6.2 7.8 9.3 18.2 9.3 31 0 11.7-3.2 21.8-9.5 30.6-6.3 8.7-15.3 15.5-26.8 20.3-11.6 4.8-24.9 7.2-40 7.2s-29.7-2.9-43.9-8.7c-14.2-5.8-26.4-13.6-36.6-23.4l10.7-21.6c9.6 9.4 20.7 16.7 33.3 21.9 12.6 5.2 24.8 7.8 36.8 7.8 15.3.0 27.3-3 36.1-8.9s13.2-13.9 13.2-23.9c0-7.8-2.3-14.3-6.9-19.4-4.6-5.1-10.3-9-17.1-11.9-6.8-2.8-16.1-6-28-9.6-14.2-4.2-25.7-8.3-34.6-12.2-8.9-3.9-16.4-9.7-22.5-17.5-6.1-7.7-9.2-17.9-9.2-30.6.0-10.9 3-20.4 9-28.6s14.6-14.6 25.6-19.1c11.1-4.5 23.8-6.8 38.2-6.8C1643.8 2058.3 1655.7 2060.1 1667.6 2063.6z"/><path fill="#6d6e71" d="M1980.1 2072.8c16.8 9.4 30.2 22.3 40 38.4 9.8 16.2 14.8 33.9 14.8 53.3.0 19.5-4.9 37.4-14.8 53.6-9.8 16.3-23.2 29.1-40 38.6s-35.3 14.3-55.2 14.3c-20.3.0-38.8-4.7-55.7-14.3-16.8-9.5-30.2-22.4-40-38.6-9.8-16.3-14.8-34.1-14.8-53.6s4.9-37.3 14.8-53.5c9.8-16.2 23.2-29 40-38.3 16.8-9.4 35.4-14 55.7-14C1944.8 2058.6 1963.2 2063.3 1980.1 2072.8zM1881.9 2092.7c-13.1 7.4-23.6 17.5-31.4 30.1-7.8 12.6-11.8 26.5-11.8 41.7.0 15.3 3.9 29.3 11.8 42 7.8 12.7 18.3 22.8 31.4 30.2 13.1 7.4 27.4 11.1 42.9 11.1s29.7-3.7 42.7-11.1 23.3-17.4 31.1-30.2c7.7-12.7 11.6-26.7 11.6-42s-3.9-29.2-11.6-41.8c-7.7-12.6-18.1-22.6-31.1-30s-27.2-11.2-42.6-11.2C1909.4 2081.5 1895.1 2085.2 1881.9 2092.7z"/><path fill="#6d6e71" d="M2186.5 2082.4v74h98.4v23.2h-98.4v90.2h-24.1v-210.6h133.8v23.2H2186.5z"/><path fill="#6d6e71" d="M2491.6 2082.4v187.4h-24.1v-187.4h-68.4v-23.2h161.4v23.2H2491.6z"/><path fill="#6d6e71" d="M2871.8 2269.8l-56.8-177.4-57.6 177.4h-24.5l-70.5-210.6h25.9l57.9 182.7 57.1-182.4 24.1-.3 57.7 182.7 57.1-182.7h25l-70.6 210.6H2871.8z"/><path fill="#6d6e71" d="M3087.3 2216.6l-23.5 53.2h-25.6l94.4-210.6h25l94.1 210.6h-26.1l-23.5-53.2H3087.3zM3144.5 2086.6l-46.9 106.8h94.4l-47.5-106.8z"/><path fill="#6d6e71" d="M3461.1 2202.7c-6 .4-10.7.6-14.1.6h-56v66.5h-24v-210.6h80c26.2.0 46.6 6.2 61.2 18.5 14.5 12.3 21.8 29.8 21.8 52.3.0 17.2-4.1 31.7-12.2 43.3-8.1 11.6-19.8 20-35 25l49.2 71.5h-27.3L3461.1 2202.7zM3491.3 2167.6c10.3-8.4 15.5-20.8 15.5-37 0-15.9-5.2-27.9-15.5-36s-25.1-12.2-44.3-12.2h-56v97.8h56C3466.2 2180.2 3481 2176 3491.3 2167.6z"/><path fill="#6d6e71" d="M3688.3 2082.4v69.2h106.2v23.2h-106.2v72.1h122.8v22.9h-146.9v-210.6h142.9v23.2H3688.3z"/><path fill="#6d6e71" d="M4147 2082.4v74h98.4v23.2H4147v90.2h-24.1v-210.6h133.8v23.2H4147z"/><path fill="#6d6e71" d="M4523.3 2072.8c16.8 9.4 30.2 22.3 40 38.4 9.8 16.2 14.8 33.9 14.8 53.3.0 19.5-4.9 37.4-14.8 53.6-9.8 16.3-23.2 29.1-40 38.6s-35.3 14.3-55.2 14.3c-20.3.0-38.8-4.7-55.7-14.3-16.8-9.5-30.2-22.4-40-38.6-9.8-16.3-14.8-34.1-14.8-53.6s4.9-37.3 14.8-53.5c9.8-16.2 23.2-29 40-38.3 16.8-9.4 35.4-14 55.7-14C4488.1 2058.6 4506.5 2063.3 4523.3 2072.8zM4425.2 2092.7c-13.1 7.4-23.6 17.5-31.4 30.1-7.8 12.6-11.8 26.5-11.8 41.7.0 15.3 3.9 29.3 11.8 42 7.8 12.7 18.3 22.8 31.4 30.2 13.1 7.4 27.4 11.1 42.9 11.1s29.7-3.7 42.7-11.1 23.3-17.4 31.1-30.2c7.7-12.7 11.6-26.7 11.6-42s-3.9-29.2-11.6-41.8c-7.7-12.6-18.1-22.6-31.1-30s-27.2-11.2-42.6-11.2C4452.6 2081.5 4438.3 2085.2 4425.2 2092.7z"/><path fill="#6d6e71" d="M4854.7 2247.7c-15.7 15.5-37.3 23.3-64.8 23.3-27.7.0-49.4-7.8-65.1-23.3-15.7-15.5-23.6-37-23.6-64.6v-124h24.1v124c0 20.3 5.8 36.1 17.3 47.5 11.6 11.4 27.3 17.1 47.3 17.1 20.1.0 35.8-5.7 47.1-17 11.4-11.3 17-27.2 17-47.7v-124h24.1v124C4878.2 2210.7 4870.4 2232.2 4854.7 2247.7z"/><path fill="#6d6e71" d="M5169.5 2269.8l-126.3-169.1v169.1h-24.1v-210.6h25l126.3 169.3v-169.3h23.8v210.6H5169.5z"/><path fill="#6d6e71" d="M5478.4 2073.1c16.4 9.3 29.4 21.9 38.9 37.9 9.6 16 14.3 33.9 14.3 53.5s-4.8 37.6-14.3 53.6c-9.5 16.1-22.6 28.7-39.3 37.9-16.6 9.2-35.2 13.8-55.5 13.8h-84.3v-210.6h85.2C5443.7 2059.2 5462 2063.8 5478.4 2073.1zM5362.3 2246.9h61.4c15.5.0 29.6-3.5 42.3-10.6s22.8-16.9 30.2-29.5c7.4-12.5 11.1-26.5 11.1-42s-3.8-29.4-11.3-41.9-17.7-22.3-30.6-29.6c-12.8-7.2-27-10.9-42.6-10.9h-60.5v164.5z"/><path fill="#6d6e71" d="M5668.6 2216.6l-23.5 53.2h-25.6l94.4-210.6h25l94.1 210.6h-26l-23.5-53.2H5668.6zM5725.8 2086.6l-46.9 106.8h94.4l-47.5-106.8z"/><path fill="#6d6e71" d="M5991 2082.4v187.4h-24v-187.4h-68.4v-23.2H6060v23.2h-69z"/><path fill="#6d6e71" d="M6175.9 2269.8v-210.6h24.1v210.6H6175.9z"/><path fill="#6d6e71" d="M6493.7 2072.8c16.8 9.4 30.2 22.3 40 38.4 9.8 16.2 14.8 33.9 14.8 53.3.0 19.5-4.9 37.4-14.8 53.6-9.8 16.3-23.2 29.1-40 38.6s-35.3 14.3-55.2 14.3c-20.3.0-38.8-4.7-55.7-14.3-16.8-9.5-30.2-22.4-40-38.6-9.8-16.3-14.8-34.1-14.8-53.6s4.9-37.3 14.8-53.5c9.8-16.2 23.2-29 40-38.3 16.8-9.4 35.4-14 55.7-14C6458.5 2058.6 6476.9 2063.3 6493.7 2072.8zM6395.6 2092.7c-13.1 7.4-23.6 17.5-31.4 30.1-7.8 12.6-11.8 26.5-11.8 41.7.0 15.3 3.9 29.3 11.8 42 7.8 12.7 18.3 22.8 31.4 30.2 13.1 7.4 27.4 11.1 42.9 11.1s29.7-3.7 42.7-11.1 23.3-17.4 31.1-30.2c7.7-12.7 11.6-26.7 11.6-42s-3.9-29.2-11.6-41.8c-7.7-12.6-18.1-22.6-31.1-30s-27.2-11.2-42.6-11.2C6423 2081.5 6408.8 2085.2 6395.6 2092.7z"/><path fill="#6d6e71" d="M6826.5 2269.8l-126.3-169.1v169.1h-24.1v-210.6h25l126.3 169.3v-169.3h23.8v210.6H6826.5z"/><linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="-4516.6152" y1="-2338.7222" x2="-4108.4111" y2="-1861.3982" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset="0" style="stop-color:#F69923"/><stop offset=".3123" style="stop-color:#F79A23"/><stop offset=".8383" style="stop-color:#E97826"/></linearGradient><path fill="url(#SVGID_1_)" d="M1230.1 13.7c-45.3 26.8-120.6 102.5-210.5 212.3l82.6 155.9c58-82.9 116.9-157.5 176.3-221.2 4.6-5.1 7-7.5 7-7.5-2.3 2.5-4.6 5-7 7.5-19.2 21.2-77.5 89.2-165.5 224.4 84.7-4.2 214.9-21.6 321.1-39.7 31.6-177-31-258-31-258S1323.4-41.4 1230.1 13.7z"/><path fill="none" d="M1090.2 903.1c.6-.1 1.2-.2 1.8-.3l-11.9 1.3c-.7.3-1.4.7-2.1 1C1082.1 904.4 1086.2 903.7 1090.2 903.1z"/><path fill="none" d="M1005.9 1182.3c-6.7 1.5-13.7 2.7-20.7 3.7C992.3 1185 999.2 1183.8 1005.9 1182.3z"/><path fill="none" d="M432.9 1808.8c.9-2.3 1.8-4.7 2.6-7 18.2-48 36.2-94.7 54-140.1 20-51 39.8-100.4 59.3-148.3 20.6-50.4 40.9-99.2 60.9-146.3 21-49.4 41.7-97 62-142.8 16.5-37.3 32.8-73.4 48.9-108.3 5.4-11.7 10.7-23.2 16-34.6 10.5-22.7 21-44.8 31.3-66.5 9.5-20 19-39.6 28.3-58.8 3.1-6.4 6.2-12.8 9.3-19.1.5-1 1-2 1.5-3.1l-10.2 1.1-8-15.9c-.8 1.6-1.6 3.1-2.4 4.6-14.5 28.8-28.9 57.9-43.1 87.2-8.2 16.9-16.4 34-24.6 51-22.6 47.4-44.8 95.2-66.6 143.3-22.1 48.6-43.7 97.5-64.9 146.5-20.8 48.1-41.3 96.2-61.2 144.2-20 48-39.5 95.7-58.5 143.2-19.9 49.5-39.2 98.7-58 147.2-4.2 10.9-8.5 21.9-12.7 32.8-15 39.2-29.7 77.8-44 116l12.7 25.1 11.4-1.2c.4-1.1.8-2.3 1.3-3.4C396.7 1905.4 414.9 1856.4 432.9 1808.8z"/><path fill="none" d="M980 1186.8c.1.0.1.0.1-.1C980.1 1186.8 980.1 1186.8 980 1186.8z"/><path fill="#be202e" d="M952.6 1323c-10.6 1.9-21.4 3.8-32.5 5.7-.1.0-.1.1-.2.1 5.6-.8 11.2-1.7 16.6-2.6C942 1325.2 947.3 1324.1 952.6 1323z"/><path opacity=".35" fill="#be202e" d="M952.6 1323c-10.6 1.9-21.4 3.8-32.5 5.7-.1.0-.1.1-.2.1 5.6-.8 11.2-1.7 16.6-2.6C942 1325.2 947.3 1324.1 952.6 1323z"/><path fill="#be202e" d="M980.3 1186.7C980.2 1186.7 980.2 1186.7 980.3 1186.7c-.1.1-.2.1-.2.1 1.8-.2 3.5-.5 5.2-.8 7-1 13.9-2.2 20.7-3.7C997.5 1183.8 989 1185.2 980.3 1186.7z"/><path opacity=".35" fill="#be202e" d="M980.3 1186.7C980.2 1186.7 980.2 1186.7 980.3 1186.7c-.1.1-.2.1-.2.1 1.8-.2 3.5-.5 5.2-.8 7-1 13.9-2.2 20.7-3.7C997.5 1183.8 989 1185.2 980.3 1186.7z"/><linearGradient id="SVGID_2_" gradientUnits="userSpaceOnUse" x1="-7537.7339" y1="-2391.4075" x2="-4625.4141" y2="-2391.4075" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset=".3233" style="stop-color:#9E2064"/><stop offset=".6302" style="stop-color:#C92037"/><stop offset=".7514" style="stop-color:#CD2335"/><stop offset="1" style="stop-color:#E97826"/></linearGradient><path fill="url(#SVGID_2_)" d="M858.6 784.7c25.1-46.9 50.5-92.8 76.2-137.4 26.7-46.4 53.7-91.3 80.9-134.7 1.6-2.6 3.2-5.2 4.8-7.7 27-42.7 54.2-83.7 81.6-122.9L1019.5 226c-6.2 7.6-12.5 15.3-18.8 23.2-23.8 29.7-48.6 61.6-73.9 95.5-28.6 38.2-58 78.9-87.8 121.7-27.6 39.5-55.5 80.9-83.5 123.7-23.8 36.5-47.7 74-71.4 112.5-.9 1.4-1.8 2.9-2.6 4.3L789 919.2c22.8-45.6 46.1-90.5 69.6-134.5z"/><linearGradient id="SVGID_3_" gradientUnits="userSpaceOnUse" x1="-7186.1777" y1="-2099.3059" x2="-5450.7183" y2="-2099.3059" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset="0" style="stop-color:#282662"/><stop offset=".0954839" style="stop-color:#662E8D"/><stop offset=".7882" style="stop-color:#9F2064"/><stop offset=".9487" style="stop-color:#CD2032"/></linearGradient><path fill="url(#SVGID_3_)" d="M369 1981c-14.2 39.1-28.5 78.9-42.9 119.6-.2.6-.4 1.2-.6 1.8-2 5.7-4.1 11.5-6.1 17.2-9.7 27.4-18 52.1-37.3 108.2 31.7 14.5 57.1 52.5 81.1 95.6-2.6-44.7-21-86.6-56.2-119.1 156.1 7 290.6-32.4 360.1-146.6 6.2-10.2 11.9-20.9 17-32.2-31.6 40.1-70.8 57.1-144.5 53-.2.1-.3.1-.5.2.2-.1.3-.1.5-.2 108.6-48.6 163.1-95.3 211.2-172.6 11.4-18.3 22.5-38.4 33.8-60.6-94.9 97.5-205 125.3-320.9 104.2l-86.9 9.5C374.4 1966.3 371.7 1973.6 369 1981z"/><linearGradient id="SVGID_4_" gradientUnits="userSpaceOnUse" x1="-7374.1626" y1="-2418.5454" x2="-4461.8428" y2="-2418.5454" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset=".3233" style="stop-color:#9E2064"/><stop offset=".6302" style="stop-color:#C92037"/><stop offset=".7514" style="stop-color:#CD2335"/><stop offset="1" style="stop-color:#E97826"/></linearGradient><path fill="url(#SVGID_4_)" d="M409.6 1786.3c18.8-48.5 38.1-97.7 58-147.2 19-47.4 38.5-95.2 58.5-143.2s40.4-96.1 61.2-144.2c21.2-49 42.9-97.8 64.9-146.5 21.8-48.1 44-95.9 66.6-143.3 8.1-17.1 16.3-34.1 24.6-51 14.2-29.3 28.6-58.4 43.1-87.2.8-1.6 1.6-3.1 2.4-4.6L681.4 706.8c-1.8 2.9-3.5 5.8-5.3 8.6-25.1 40.9-50 82.7-74.4 125.4-24.7 43.1-49 87.1-72.7 131.7-20 37.6-39.6 75.6-58.6 113.9-3.8 7.8-7.6 15.5-11.3 23.2-23.4 48.2-44.6 94.8-63.7 139.5-21.7 50.7-40.7 99.2-57.5 145.1-11 30.2-21 59.4-30.1 87.4-7.5 24-14.7 47.9-21.5 71.8-16 56.3-29.9 112.4-41.2 168.3L353 1935.1c14.3-38.1 28.9-76.8 44-116C401.1 1808.2 405.4 1797.3 409.6 1786.3z"/><linearGradient id="SVGID_5_" gradientUnits="userSpaceOnUse" x1="-7161.7642" y1="-2379.1431" x2="-5631.2524" y2="-2379.1431" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset="0" style="stop-color:#282662"/><stop offset=".0954839" style="stop-color:#662E8D"/><stop offset=".7882" style="stop-color:#9F2064"/><stop offset=".9487" style="stop-color:#CD2032"/></linearGradient><path fill="url(#SVGID_5_)" d="M243.5 1729.4c-13.6 68.2-23.2 136.2-28 203.8-.2 2.4-.4 4.7-.5 7.1-33.7-54-124-106.8-123.8-106.2 64.6 93.7 113.7 186.7 120.9 278-34.6 7.1-82-3.2-136.8-23.3 57.1 52.5 1e2 67 116.7 70.9-52.5 3.3-107.1 39.3-162.1 80.8 80.5-32.8 145.5-45.8 192.1-35.3C148.1 2414.2 74.1 2645 0 2890c22.7-6.7 36.2-21.9 43.9-42.6 13.2-44.4 100.8-335.6 238-718.2 3.9-10.9 7.8-21.8 11.8-32.9 1.1-3 2.2-6.1 3.3-9.2 14.5-40.1 29.5-81.1 45.1-122.9 3.5-9.5 7.1-19 10.7-28.6.1-.2.1-.4.2-.6l-107.9-213.2C244.6 1724.4 244 1726.9 243.5 1729.4z"/><linearGradient id="SVGID_6_" gradientUnits="userSpaceOnUse" x1="-7374.1626" y1="-2117.1309" x2="-4461.8428" y2="-2117.1309" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset=".3233" style="stop-color:#9E2064"/><stop offset=".6302" style="stop-color:#C92037"/><stop offset=".7514" style="stop-color:#CD2335"/><stop offset="1" style="stop-color:#E97826"/></linearGradient><path fill="url(#SVGID_6_)" d="M805.6 937c-3.1 6.3-6.2 12.7-9.3 19.1-9.3 19.2-18.8 38.8-28.3 58.8-10.3 21.7-20.7 43.9-31.3 66.5-5.3 11.4-10.6 22.9-16 34.6-16.1 35-32.4 71.1-48.9 108.3-20.3 45.8-41 93.4-62 142.8-20 47.1-40.3 95.9-60.9 146.3-19.5 47.9-39.3 97.3-59.3 148.3-17.8 45.4-35.9 92.1-54 140.1-.9 2.3-1.8 4.7-2.6 7-18 47.6-36.2 96.6-54.6 146.8-.4 1.1-.8 2.3-1.3 3.4l86.9-9.5c-1.7-.3-3.5-.5-5.2-.9 103.9-13 242.1-90.6 331.4-186.5 41.1-44.2 78.5-96.3 113-157.3 25.7-45.4 49.8-95.8 72.8-151.5 20.1-48.7 39.4-101.4 58-158.6-23.9 12.6-51.2 21.8-81.4 28.2-5.3 1.1-10.7 2.2-16.1 3.1-5.5 1-11 1.8-16.6 2.6.1.0.1-.1.2-.1 96.9-37.3 158-109.2 202.4-197.4-25.5 17.4-66.9 40.1-116.6 51.1-6.7 1.5-13.7 2.7-20.7 3.7-1.7.3-3.5.6-5.2.8.1.0.1.0.1-.1h.1c33.6-14.1 62-29.8 86.6-48.4 5.3-4 10.4-8.1 15.3-12.3 7.5-6.5 14.7-13.3 21.5-20.5 4.4-4.6 8.6-9.3 12.7-14.2 9.6-11.5 18.7-23.9 27.1-37.3 2.6-4.1 5.1-8.3 7.6-12.6 3.2-6.2 6.3-12.3 9.3-18.3 13.5-27.2 24.4-51.5 33-72.8 4.3-10.6 8.1-20.5 11.3-29.7 1.3-3.7 2.5-7.2 3.7-10.6 3.4-10.2 6.2-19.3 8.4-27.3 3.3-12 5.3-21.5 6.4-28.4-3.3 2.6-7.1 5.2-11.3 7.7-29.3 17.5-79.5 33.4-119.9 40.8l79.8-8.8-79.8 8.8c-.6.1-1.2.2-1.8.3-4 .7-8.1 1.3-12.2 2 .7-.3 1.4-.7 2.1-1l-273 29.9C806.6 935 806.1 936 805.6 937z"/><linearGradient id="SVGID_7_" gradientUnits="userSpaceOnUse" x1="-7554.8232" y1="-2132.0981" x2="-4642.5034" y2="-2132.0981" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset=".3233" style="stop-color:#9E2064"/><stop offset=".6302" style="stop-color:#C92037"/><stop offset=".7514" style="stop-color:#CD2335"/><stop offset="1" style="stop-color:#E97826"/></linearGradient><path fill="url(#SVGID_7_)" d="M1112.9 385.1c-24.3 37.3-50.8 79.6-79.4 127.5-1.5 2.5-3 5.1-4.5 7.6-24.6 41.5-50.8 87.1-78.3 137-23.8 43.1-48.5 89.3-74.3 139C854 839.5 830.8 885.4 807 934l273-29.9c79.5-36.6 115.1-69.7 149.6-117.6 9.2-13.2 18.4-27 27.5-41.3 28-43.8 55.6-92 80.1-139.9 23.7-46.3 44.7-92.2 60.7-133.5 10.2-26.3 18.4-50.8 24.1-72.3 5-19 8.9-36.9 11.9-54.1C1327.9 363.5 1197.6 380.9 1112.9 385.1z"/><path fill="#be202e" d="M936.5 1326.1c-5.5 1-11 1.8-16.6 2.6C925.5 1328 931 1327.1 936.5 1326.1z"/><path opacity=".35" fill="#be202e" d="M936.5 1326.1c-5.5 1-11 1.8-16.6 2.6C925.5 1328 931 1327.1 936.5 1326.1z"/><linearGradient id="SVGID_8_" gradientUnits="userSpaceOnUse" x1="-7374.1626" y1="-2027.484" x2="-4461.8433" y2="-2027.484" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset=".3233" style="stop-color:#9E2064"/><stop offset=".6302" style="stop-color:#C92037"/><stop offset=".7514" style="stop-color:#CD2335"/><stop offset="1" style="stop-color:#E97826"/></linearGradient><path fill="url(#SVGID_8_)" d="M936.5 1326.1c-5.5 1-11 1.8-16.6 2.6C925.5 1328 931 1327.1 936.5 1326.1z"/><path fill="#be202e" d="M980 1186.8c1.8-.2 3.5-.5 5.2-.8C983.5 1186.3 981.8 1186.6 980 1186.8z"/><path opacity=".35" fill="#be202e" d="M980 1186.8c1.8-.2 3.5-.5 5.2-.8C983.5 1186.3 981.8 1186.6 980 1186.8z"/><linearGradient id="SVGID_9_" gradientUnits="userSpaceOnUse" x1="-7374.1626" y1="-2037.7417" x2="-4461.8433" y2="-2037.7417" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset=".3233" style="stop-color:#9E2064"/><stop offset=".6302" style="stop-color:#C92037"/><stop offset=".7514" style="stop-color:#CD2335"/><stop offset="1" style="stop-color:#E97826"/></linearGradient><path fill="url(#SVGID_9_)" d="M980 1186.8c1.8-.2 3.5-.5 5.2-.8C983.5 1186.3 981.8 1186.6 980 1186.8z"/><path fill="#be202e" d="M980.2 1186.7z"/><path opacity=".35" fill="#be202e" d="M980.2 1186.7z"/><linearGradient id="SVGID_10_" gradientUnits="userSpaceOnUse" x1="-5738.0635" y1="-2039.799" x2="-5094.3457" y2="-2039.799" gradientTransform="matrix(0.4226 -0.9063 0.9063 0.4226 5117.8774 -2859.9343)"><stop offset=".3233" style="stop-color:#9E2064"/><stop offset=".6302" style="stop-color:#C92037"/><stop offset=".7514" style="stop-color:#CD2335"/><stop offset="1" style="stop-color:#E97826"/></linearGradient><path fill="url(#SVGID_10_)" d="M980.2 1186.7z"/></svg></div></a><ul class=footer-link><li><a class=white href=http://www.apache.org>Foundation</a></li><li><a class=white href=http://www.apache.org/licenses/>License</a></li><li><a class=white href=https://www.apache.org/security/>Security</a></li><li><a class=white href=http://www.apache.org/events/current-event>Events</a></li><li><a class=white href=http://www.apache.org/foundation/sponsorship.html>Sponsorship</a></li><li><a class=white href=http://www.apache.org/foundation/thanks.html>Thanks</a></li><li><a class=white href=https://privacy.apache.org/policies/privacy-policy-public.html target=_blank>Privacy</a></li></ul></div></div><div class="col-6 text-white text-center container-center"><p>Copyright &copy; 2024 The Apache Software Foundation, Licensed under the <a class=white href=https://www.apache.org/licenses/LICENSE-2.0>Apache License Version 2.0</a></p><p>Apache and the Apache feather logo are trademarks of The Apache Software Foundation.</p></div><div class=col-1></div></div></div></footer></div><script src=https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js integrity=sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN crossorigin=anonymous></script>
<script src=https://cdn.jsdelivr.net/npm/bootstrap@4.6.1/dist/js/bootstrap.min.js integrity="sha512-UR25UO94eTnCVwjbXozyeVd6ZqpaAE9naiEUBK/A+QDbfSTQFhPGj5lOR6d8tsgbBk84Ggb5A3EkjsOgPRPcKA==" crossorigin=anonymous></script>
<script src=/js/tabpane-persist.js></script>
<script src=/js/main.min.aa9f4c5dae6a98b2c46277f4c56f1673a2b000d1756ce4ffae93784cab25e6d5.js integrity="sha256-qp9MXa5qmLLEYnf0xW8Wc6KwANF1bOT/rpN4TKsl5tU=" crossorigin=anonymous></script>
<script src=/js/prism.js></script></body></html>