blob: 62c2367af362335c0d688265bcca95e3824f4ca5 [file] [log] [blame]
<!DOCTYPE html>
<html lang="en" class="js csstransforms3d">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<meta name="generator" content="Hugo 0.70.0" />
<meta name="description" content="">
<meta name="buildDate" content="2022-08-12 13:01:23">
<link rel="shortcut icon" href="https://shardingsphere.apache.org/document/current/img/favicon.png" type="image/x-icon" />
<title>Contributor Guide :: ShardingSphere</title>
<link href="https://shardingsphere.apache.org/community/css/nucleus.css?1660280483" rel="stylesheet">
<link href="https://shardingsphere.apache.org/community/css/font-awesome.min.css?1660280483" rel="stylesheet">
<link href="https://shardingsphere.apache.org/community/css/hybrid.css?1660280483" rel="stylesheet">
<link href="https://shardingsphere.apache.org/community/css/featherlight.min.css?1660280483" rel="stylesheet">
<link href="https://shardingsphere.apache.org/community/css/perfect-scrollbar.min.css?1660280483" rel="stylesheet">
<link href="https://shardingsphere.apache.org/community/css/auto-complete.css?1660280483" rel="stylesheet">
<link href="https://shardingsphere.apache.org/community/css/theme.css?1660280483" rel="stylesheet">
<link href="https://shardingsphere.apache.org/community/css/hugo-theme.css?1660280483" rel="stylesheet">
<link href="https://shardingsphere.apache.org/community/css/theme-white.css?1660280483" rel="stylesheet">
<script src="https://shardingsphere.apache.org/community/js/jquery-2.x.min.js?1660280483"></script>
<script>
var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src = "https://hm.baidu.com/hm.js?d5a1dc8dcf63a64ee55b80de01c7fb1a";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
<script async src="https://www.googletagmanager.com/gtag/js?id=G-HPVGEN405S"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){window.dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-HPVGEN405S');
</script>
<style type="text/css">
:root #header + #content > #left > #rlblock_left{
display:none !important;
}
</style>
</head>
<body class="" data-url="/en/contribute/contributor/">
<div class="change-theme">
<div class="wrap">
<span data-item="retro">
<svg t="1649761460834" class="icon" viewBox="0 0 1243 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2052" width="16" height="16"><path d="M755.093336 61.436797a511.973304 511.973304 0 1 0 207.495466 693.650688l-99.615377-53.757197a398.827204 398.827204 0 1 1-161.637286-540.351253l53.757197-99.615378z" fill="#ffffff" p-id="2053"></path><path d="M1204.971593 188.84501L534.652259 736.217612l-285.242269-364.086159 86.304071-67.653615 216.199012 275.953611 583.649567-476.574007 69.335813 84.987568z" fill="#ffffff" p-id="2054"></path></svg>
Retro
</span>
<span data-item="eyehelp">
<svg t="1649761460834" class="icon" viewBox="0 0 1243 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2052" width="16" height="16"><path d="M755.093336 61.436797a511.973304 511.973304 0 1 0 207.495466 693.650688l-99.615377-53.757197a398.827204 398.827204 0 1 1-161.637286-540.351253l53.757197-99.615378z" fill="#ffffff" p-id="2053"></path><path d="M1204.971593 188.84501L534.652259 736.217612l-285.242269-364.086159 86.304071-67.653615 216.199012 275.953611 583.649567-476.574007 69.335813 84.987568z" fill="#ffffff" p-id="2054"></path></svg>
Eye care
</span>
<span data-item="haitian">
<svg t="1649761460834" class="icon" viewBox="0 0 1243 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2052" width="16" height="16"><path d="M755.093336 61.436797a511.973304 511.973304 0 1 0 207.495466 693.650688l-99.615377-53.757197a398.827204 398.827204 0 1 1-161.637286-540.351253l53.757197-99.615378z" fill="#ffffff" p-id="2053"></path><path d="M1204.971593 188.84501L534.652259 736.217612l-285.242269-364.086159 86.304071-67.653615 216.199012 275.953611 583.649567-476.574007 69.335813 84.987568z" fill="#ffffff" p-id="2054"></path></svg>
Haitian
</span>
<span data-item="deep">
<svg t="1649761460834" class="icon" viewBox="0 0 1243 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2052" width="16" height="16"><path d="M755.093336 61.436797a511.973304 511.973304 0 1 0 207.495466 693.650688l-99.615377-53.757197a398.827204 398.827204 0 1 1-161.637286-540.351253l53.757197-99.615378z" fill="#ffffff" p-id="2053"></path><path d="M1204.971593 188.84501L534.652259 736.217612l-285.242269-364.086159 86.304071-67.653615 216.199012 275.953611 583.649567-476.574007 69.335813 84.987568z" fill="#ffffff" p-id="2054"></path></svg>
Deep
</span>
<span data-item="dark">
<svg t="1649761460834" class="icon" viewBox="0 0 1243 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2052" width="16" height="16"><path d="M755.093336 61.436797a511.973304 511.973304 0 1 0 207.495466 693.650688l-99.615377-53.757197a398.827204 398.827204 0 1 1-161.637286-540.351253l53.757197-99.615378z" fill="#ffffff" p-id="2053"></path><path d="M1204.971593 188.84501L534.652259 736.217612l-285.242269-364.086159 86.304071-67.653615 216.199012 275.953611 583.649567-476.574007 69.335813 84.987568z" fill="#ffffff" p-id="2054"></path></svg>
Dark
</span>
<span class="active">
<svg t="1649761460834" class="icon" viewBox="0 0 1243 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2052" width="16" height="16"><path d="M755.093336 61.436797a511.973304 511.973304 0 1 0 207.495466 693.650688l-99.615377-53.757197a398.827204 398.827204 0 1 1-161.637286-540.351253l53.757197-99.615378z" fill="#ffffff" p-id="2053"></path><path d="M1204.971593 188.84501L534.652259 736.217612l-285.242269-364.086159 86.304071-67.653615 216.199012 275.953611 583.649567-476.574007 69.335813 84.987568z" fill="#ffffff" p-id="2054"></path></svg>
Default
</span>
</div>
</div>
<header>
<div class="wrap">
<a href="https://shardingsphere.apache.org/"><img src="https://shardingsphere.apache.org/document/current/img/logo_v3.png" /></a>
<section id="prefooter">
<ul>
<li>
<a class="padding">
<i class="fa fa-fw fa-language"></i>
<div class="select-style">
<select id="select-language" onchange="location = this.value;">
<option id="en" value="/community/en/contribute/contributor/" selected>English</option>
<option id="cn" value="/community/cn/contribute/contributor/">简体中文</option>
</select>
<svg t="1645437162166" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2449" width="32" height="32"><path d="M483.072 714.496l30.165333 30.208 415.957334-415.829333a42.837333 42.837333 0 0 0 0-60.288 42.538667 42.538667 0 0 0-60.330667-0.042667l-355.541333 355.413333-355.242667-355.413333a42.496 42.496 0 0 0-60.288 0 42.837333 42.837333 0 0 0-0.085333 60.330667l383.701333 383.872 1.706667 1.749333z" fill="#3D3D3D" p-id="2450"></path></svg>
</div>
</a>
</li>
</ul>
</section>
</div>
</header>
<div class="wrap">
<nav id="sidebar" class="">
<div id="header-wrapper">
<div class="searchbox">
<label for="search-by"><i class="fa fa-search"></i></label>
<input data-search-input id="search-by" type="text" placeholder="Search...">
<span data-search-clear=""><i class="fa fa-close"></i></span>
</div>
<script type="text/javascript" src="https://shardingsphere.apache.org/community/js/lunr.min.js?1660280483"></script>
<script type="text/javascript" src="https://shardingsphere.apache.org/community/js/auto-complete.js?1660280483"></script>
<script type="text/javascript">
var baseurl = "\/en";
</script>
<script type="text/javascript" src="https://shardingsphere.apache.org/community/js/search.js?1660280483"></script>
</div>
<div class="highlightable">
<div class="leftMenu">
<ul class="topics">
<li data-nav-id="/en/contribute/" title="Get Involved" class="dd-item
parent
">
<a href="https://shardingsphere.apache.org/community/en/contribute/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>1. </b>Get Involved
</a>
<ul>
<li data-nav-id="/en/contribute/subscribe/" title="Subscribe Guide" class="dd-item ">
<a href="https://shardingsphere.apache.org/community/en/contribute/subscribe/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Subscribe Guide
</a>
</li>
<li data-nav-id="/en/contribute/establish-project/" title="How to Set Up Your DEV Environment" class="dd-item ">
<a href="https://shardingsphere.apache.org/community/en/contribute/establish-project/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
How to Set Up Your DEV Environment
</a>
</li>
<li data-nav-id="/en/contribute/contributor/" title="Contributor Guide" class="dd-item active">
<a href="https://shardingsphere.apache.org/community/en/contribute/contributor/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Contributor Guide
</a>
</li>
<li data-nav-id="/en/contribute/committer/" title="Committer Guide" class="dd-item ">
<a href="https://shardingsphere.apache.org/community/en/contribute/committer/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Committer Guide
</a>
</li>
<li data-nav-id="/en/contribute/code-conduct/" title="Code of Conduct" class="dd-item ">
<a href="https://shardingsphere.apache.org/community/en/contribute/code-conduct/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Code of Conduct
</a>
</li>
<li data-nav-id="/en/contribute/document-conduct/" title="Document Specification" class="dd-item ">
<a href="https://shardingsphere.apache.org/community/en/contribute/document-conduct/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Document Specification
</a>
</li>
<li data-nav-id="/en/contribute/issue-conduct/" title="Issue Conduct" class="dd-item ">
<a href="https://shardingsphere.apache.org/community/en/contribute/issue-conduct/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Issue Conduct
</a>
</li>
<li data-nav-id="/en/contribute/document-contributor/" title="Documents Contributor Guide" class="dd-item ">
<a href="https://shardingsphere.apache.org/community/en/contribute/document-contributor/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Documents Contributor Guide
</a>
</li>
<li data-nav-id="/en/contribute/release/" title="ShardingSphere Release Guide" class="dd-item ">
<a href="https://shardingsphere.apache.org/community/en/contribute/release/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
ShardingSphere Release Guide
</a>
</li>
<li data-nav-id="/en/contribute/release-elasticjob/" title="ElasticJob Release Guide" class="dd-item ">
<a href="https://shardingsphere.apache.org/community/en/contribute/release-elasticjob/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
ElasticJob Release Guide
</a>
</li>
<li data-nav-id="/en/contribute/release-elasticjob-ui/" title="ElasticJob-UI Release Guide" class="dd-item ">
<a href="https://shardingsphere.apache.org/community/en/contribute/release-elasticjob-ui/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
ElasticJob-UI Release Guide
</a>
</li>
<li data-nav-id="/en/contribute/2fa/" title="2FA" class="dd-item ">
<a href="https://shardingsphere.apache.org/community/en/contribute/2fa/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
2FA
</a>
</li>
<li data-nav-id="/en/contribute/icla/" title="Sign ICLA Guide" class="dd-item ">
<a href="https://shardingsphere.apache.org/community/en/contribute/icla/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Sign ICLA Guide
</a>
</li>
<li data-nav-id="/en/contribute/vote/" title="New committer voting process" class="dd-item ">
<a href="https://shardingsphere.apache.org/community/en/contribute/vote/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
New committer voting process
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/powered-by/" title="Powered By ShardingSphere" class="dd-item
">
<a href="https://shardingsphere.apache.org/community/en/powered-by/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>2. </b>Powered By ShardingSphere
</a>
</li>
<li data-nav-id="/en/team/" title="Team" class="dd-item
">
<a href="https://shardingsphere.apache.org/community/en/team/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>3. </b>Team
</a>
</li>
<li data-nav-id="/en/security/" title="Security" class="dd-item
">
<a href="https://shardingsphere.apache.org/community/en/security/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>4. </b>Security
</a>
</li>
</ul>
</div>
<a class="padding" href="https://shardingsphere.apache.org/pdf/shardingsphere_docs_en.pdf">
Download PDF
</a>
<section id="footer">
<p></p>
</section>
</div>
</nav>
<section id="body">
<div id="overlay"></div>
<div class="padding highlightable">
<div>
<div id="top-bar">
<div id="top-github-link">
<a class="github-link" title='Edit this page' href="https://github.com/apache/shardingsphere/tree/master/docs/community/content/contribute/contributor.en.md" target="blank">
<i class="fa fa-code-fork"></i>
<span id="top-github-link-text">Edit this page</span>
</a>
</div>
<div id="breadcrumbs" itemscope="" itemtype="http://data-vocabulary.org/Breadcrumb">
<span id="sidebar-toggle-span">
<a href="#" id="sidebar-toggle" data-sidebar-toggle="">
<i class="fa fa-bars"></i>
</a>
</span>
<span class="links">
<a href='https://shardingsphere.apache.org/community/en/'>ShardingSphere</a> > <a href='https://shardingsphere.apache.org/community/en/contribute/'>Get Involved</a> > Contributor Guide
</span>
</div>
</div>
</div>
<div id="chapter">
<div id="body-inner">
<nav id="TableOfContents">
<ul>
<li><a href="#submit-an-issue">Submit an Issue</a></li>
<li><a href="#developer-flow">Developer Flow</a></li>
</ul>
</nav>
<p>You can report a bug, submit a new function enhancement suggestion, or submit a pull request directly.</p>
<h2 id="submit-an-issue">Submit an Issue</h2>
<ul>
<li>Before submitting an issue, please go through a comprehensive search to make sure the problem cannot be solved just by searching.</li>
<li>Check the <a href="https://github.com/apache/shardingsphere/issues">Issue List</a> to make sure the problem is not repeated.</li>
<li><a href="https://github.com/apache/shardingsphere/issues/new/choose">Create</a> a new issue and choose the type of issue.</li>
<li>Define the issue with a clear and descriptive title.</li>
<li>Fill in necessary information according to the template.</li>
<li>Choose a label after issue created, for example: bug, enhancement, discussion.</li>
<li>Please pay attention for your issue, you may need provide more information during discussion.</li>
</ul>
<h2 id="developer-flow">Developer Flow</h2>
<p><strong>1. Prepare repository</strong></p>
<p>Go to <a href="https://github.com/apache/shardingsphere">ShardingSphere GitHub Repo</a> and fork repository to your account.</p>
<p>Clone repository to local machine.</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">git clone https://github.com/<span style="color:#f92672">(</span>your_github_name<span style="color:#f92672">)</span>/shardingsphere.git
</code></pre></div><p>Add ShardingSphere remote repository.</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">git remote add apache https://github.com/apache/shardingsphere.git
git remote -v
</code></pre></div><p>Build and install all modules, it&rsquo;ll install modules into Maven local repository cache, and also generate Java class files of parser from ANTLR grammar <code>.g4</code> files to prevent from compile error of parser on IDE.</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">cd shardingsphere
mvn clean install -Dmaven.javadoc.skip<span style="color:#f92672">=</span>true -Dcheckstyle.skip<span style="color:#f92672">=</span>true -Drat.skip<span style="color:#f92672">=</span>true -Djacoco.skip<span style="color:#f92672">=</span>true -DskipITs -DskipTests -Prelease
</code></pre></div><p>When you pull the latest code from ShardingSphere and create new branch later, you might get similar compile error of parser again, then you could run this command again.</p>
<p><strong>2. Choose Issue</strong></p>
<ul>
<li>Please choose the issue to be edited. If it is a new issue discovered or a new function enhancement to offer, please create an issue and set the right label for it.</li>
<li>After choosing the relevant issue, please reply with a deadline to indicate that you are working on it.</li>
<li>Find a mentor from the <a href="https://shardingsphere.apache.org/community/en/contribute/contributor/">Developer List</a> and he/she will give you feedback about the design and the implementation of function in time.</li>
</ul>
<p><strong>3. Create Branch</strong></p>
<ul>
<li>Switch to forked master branch, update local branch, then create a new branch.</li>
</ul>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">git checkout master
git fetch apache
git rebase apache/master
git push origin master <span style="color:#75715e"># optional</span>
git checkout -b issueNo
</code></pre></div><p><strong>Notice</strong> :We will merge PR using squash, commit log will be different with upstream if you use old branch.</p>
<p><strong>4. Coding</strong></p>
<ul>
<li>Please obey the <a href="https://shardingsphere.apache.org/community/en/contribute/code-conduct/">Code of Conduct</a> during the process of development and finish the check before submitting the pull request.</li>
<li>push code to your fork repo.</li>
</ul>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">git add modified-file-names
git commit -m <span style="color:#e6db74">&#39;commit log&#39;</span>
git push origin issueNo
</code></pre></div><p><strong>5. Submit Pull Request</strong></p>
<ul>
<li>Send a pull request to the master branch.</li>
<li>The mentor will do code review before discussing some details (including the design, the implementation and the performance) with you. The request will be merged into the branch of current development version after the edit is well enough.</li>
<li>At last, congratulations on being an official contributor of ShardingSphere</li>
</ul>
<p><strong>6. Delete Branch</strong></p>
<ul>
<li>You can delete the remote branch (origin/issueNo) and the local branch (issueNo) associated with the remote branch (origin/issueNo) after the mentor merged the pull request into the master branch of ShardingSphere.</li>
</ul>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">git checkout master
git branch -d issueNo
git remote prune origin <span style="color:#75715e"># If you delete branch on GitHub PR page, else you could delete origin branch with following command</span>
git push origin --delete issueNo
</code></pre></div><p><strong>Notice</strong>: Please note that in order to show your id in the contributor list, don&rsquo;t forget the configurations below:</p>
<div class="highlight"><pre style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-shell" data-lang="shell">git config --global user.name <span style="color:#e6db74">&#34;username&#34;</span>
git config --global user.email <span style="color:#e6db74">&#34;username@mail.com&#34;</span>
</code></pre></div>
<footer class=" footline" >
</footer>
</div>
</div>
</div>
<div id="navigation" >
<a class="nav nav-prev" href="https://shardingsphere.apache.org/community/en/contribute/establish-project/" title="How to Set Up Your DEV Environment"> <i class="fa fa-long-arrow-left fa-lg"></i> Previous</a>
<a class="nav nav-next" href="https://shardingsphere.apache.org/community/en/contribute/committer/" title="Committer Guide" style="margin-right: 0px;">Next<i class="fa fa-long-arrow-right fa-lg"></i></a>
</div>
</section>
</div>
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="https://shardingsphere.apache.org/community/js/clipboard.min.js?1660280483"></script>
<script src="https://shardingsphere.apache.org/community/js/perfect-scrollbar.min.js?1660280483"></script>
<script src="https://shardingsphere.apache.org/community/js/perfect-scrollbar.jquery.min.js?1660280483"></script>
<script src="https://shardingsphere.apache.org/community/js/jquery.sticky.js?1660280483"></script>
<script src="https://shardingsphere.apache.org/community/js/featherlight.min.js?1660280483"></script>
<script src="https://shardingsphere.apache.org/community/js/html5shiv-printshiv.min.js?1660280483"></script>
<script src="https://shardingsphere.apache.org/community/js/highlight.pack.js?1660280483"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="https://shardingsphere.apache.org/community/js/modernizr.custom.71422.js?1660280483"></script>
<script src="https://shardingsphere.apache.org/community/js/learn.js?1660280483"></script>
<script src="https://shardingsphere.apache.org/community/js/hugo-learn.js?1660280483"></script>
<script>
try{
function log(fileName, category, locale){
window._hmt.push(['_trackEvent', 'document', 'download', locale ? 'PDF_'+locale : fileName]);
gtag('event', 'Downloads', {
'event_category' : locale ? 'PDF' : category,
'event_label' : locale ? locale+'.pdf' : fileName
});
}
$('.padding[href*=shardingsphere]').on('click', function(){
var locale = /cn/.test(location.pathname) ?'cn':'en';
log('','', locale)
})
function getFileName(str){
var strs = str.split('/');
return strs[strs.length - 1]
}
$('a[href$="src.zip"]').on('click', function(){
log(getFileName($(this).attr('href')), "SRC")
})
$('a[href$="zip.asc"]').on('click', function(){
log(getFileName($(this).attr('href')), "ASC")
})
$('a[href$="zip.sha512"]').on('click', function(){
log(getFileName($(this).attr('href')), "SHA512")
})
$('a[href$="tar.gz.asc"]').on('click', function(){
log(getFileName($(this).attr('href')), "ASC")
})
$('a[href$="tar.gz.sha512"]').on('click', function(){
log(getFileName($(this).attr('href')), "SHA512")
})
$('a[href$="tar.gz"]').on('click', function(){
log(getFileName($(this).attr('href')), "TAR")
})
}catch(ex){}
</script>
</body>
</html>