blob: 875344ba7e773a927e85040916c491136169ba5f [file] [log] [blame]
<!doctype html>
<!--
Minimal Mistakes Jekyll Theme 4.4.1 by Michael Rose
Copyright 2017 Michael Rose - mademistakes.com | @mmistakes
Free for personal and commercial use under the MIT license
https://github.com/mmistakes/minimal-mistakes/blob/master/LICENSE.txt
-->
<html lang="en" class="no-js">
<head>
<meta charset="utf-8">
<!-- begin SEO -->
<title>Contributing to Apache ServiceComb - Apache ServiceComb</title>
<meta name="description" content="Contributing to Apache ServiceComb">
<meta name="author" content="">
<meta property="og:locale" content="en">
<meta property="og:site_name" content="Apache ServiceComb">
<meta property="og:title" content="Contributing to Apache ServiceComb">
<link rel="canonical" href="https://github.com/pages/apache/incubator-servicecomb-website/developers/contributing">
<meta property="og:url" content="https://github.com/pages/apache/incubator-servicecomb-website/developers/contributing">
<meta property="og:description" content="Contributing to Apache ServiceComb">
<meta name="twitter:site" content="@ServiceComb">
<meta name="twitter:title" content="Contributing to Apache ServiceComb">
<meta name="twitter:description" content="Contributing to Apache ServiceComb">
<meta name="twitter:url" content="">
<meta name="twitter:card" content="summary">
<script type="application/ld+json">
{
"@context" : "http://schema.org",
"@type" : "Person",
"name" : "Apache ServiceComb",
"url" : "https://github.com/pages/apache/incubator-servicecomb-website",
"sameAs" : null
}
</script>
<meta name="google-site-verification" content="HvJjNd7vvJ-yjSTHlBiIWEYxp_Hrz-PYEY5Idz9LRcA" />
<!-- end SEO -->
<link href="/feed.xml" type="application/atom+xml" rel="alternate" title="Apache ServiceComb Feed">
<!-- http://t.co/dKP3o1e -->
<meta name="HandheldFriendly" content="True">
<meta name="MobileOptimized" content="320">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script>
document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/g, '') + ' js ';
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/1.7.1/clipboard.min.js"></script>
<script src="/assets/vendor/prism/prism.js"></script>
<script type="text/javascript" async
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-MML-AM_CHTML">
</script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>
<!-- For all browsers -->
<link rel="stylesheet" href="/assets/css/main.css?v=1">
<link rel="stylesheet" href="/assets/vendor/prism/prism.css?v=1">
<!--[if lte IE 9]>
<style>
/* old IE unsupported flexbox fixes */
.greedy-nav .site-title {
padding-right: 3em;
}
.greedy-nav button {
position: absolute;
top: 0;
right: 0;
height: 100%;
}
</style>
<![endif]-->
<meta http-equiv="cleartype" content="on">
<!-- start custom head snippets -->
<!-- insert favicons. use http://realfavicongenerator.net/ -->
<link href="https://fonts.cat.net/css?family=Roboto:400,500,700|Source+Code+Pro" rel="stylesheet">
<script src="/assets/js/custom.js"></script>
<!-- end custom head snippets -->
</head>
<body class="layout--single">
<!--[if lt IE 9]>
<div class="notice--danger align-center" style="margin: 0;">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</div>
<![endif]-->
<div class="masthead" onmouseleave="$('#childrenShow').css('display', 'none')">
<div class="masthead__inner-wrap">
<div class="masthead__menu">
<nav id="site-nav" class="greedy-nav">
<a class="site-title active" href="/"><img src="https://www.apache.org/img/servicecomb.png"></a>
<ul class="visible-links">
<li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
<a href="/">Home</a>
</li>
<li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
<a href="/developers/">Projects</a>
</li>
<li class="def-nav-li" onmouseenter="$('#childrenShow').css('display', 'block')">
<a href="/docs/users/">Documentation</a>
<ul id="childrenShow" class="def-children-show-en" onmouseleave="$('#childrenShow').css('display', 'none')">
<li><a href="/docs/getting-started/" class="">Getting started</a></li>
<li><a href="/docs/users/" class="">Docs</a></li>
<li><a href="/slides/" class="">Video</a></li>
<li><a href="/faqs/" class="">FAQ</a></li>
</ul>
</li>
<li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
<a class="active" href="/developers/contributing">Community</a>
</li>
<li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
<a href="/year-archive/">Blogs</a>
</li>
<li class="masthead__menu-item" onmouseenter="$('#childrenShow').css('display', 'none')">
<a href="/release/">Downloads</a>
</li>
</ul>
<button><div class="navicon"></div></button>
<ul class="hidden-links hidden"></ul>
<div class="nav-lang">
<a href=/cn/developers/contributing>中文</a>
</div>
</nav>
</div>
</div>
</div>
<div id="main" role="main">
<div class="sidebar sticky">
<div class="back-to-home"><a href="/">Home</a> > Contributing to Apache ServiceComb</div>
<nav class="nav__list">
<input id="ac-toc" name="accordion-toc" type="checkbox" />
<label for="ac-toc">Toggle Menu</label>
<ul class="nav__items">
<li>
<a href="/developers/"><span class="nav__sub-title nav__sub-title-with-url">Projects</span></a>
</li>
<li>
<a href="/developers/team/"><span class="nav__sub-title nav__sub-title-with-url">Team</span></a>
</li>
<li>
<a href="/developers/contributing"><span class="nav__sub-title nav__sub-title-with-url">Contributing to Apache ServiceComb</span></a>
</li>
<li>
<a href="/developers/becomming-a-commiter"><span class="nav__sub-title nav__sub-title-with-url">Becoming A Committer of Apache ServiceComb</span></a>
</li>
<li>
<a href="/developers/setup-develop-environment/"><span class="nav__sub-title nav__sub-title-with-url">Develop Environment Setup</span></a>
</li>
<li>
<a href="/developers/submit-codes/"><span class="nav__sub-title nav__sub-title-with-url">Code Submit Guide</span></a>
</li>
<li>
<a href="/developers/use-jira/"><span class="nav__sub-title nav__sub-title-with-url">How to Use JIRA</span></a>
</li>
<li>
<a href="/developers/setup-committer-rights/"><span class="nav__sub-title nav__sub-title-with-url">Set Up Write Access for Committer</span></a>
</li>
<li>
<a href="/developers/release-guide/"><span class="nav__sub-title nav__sub-title-with-url">How to Release in Apache</span></a>
</li>
<li>
<a href="/developers/release-validation-guide/"><span class="nav__sub-title nav__sub-title-with-url">How to verify Apache Release</span></a>
</li>
<li>
<a href="/developers/sonarcloud-how-to/"><span class="nav__sub-title nav__sub-title-with-url">How to Use SonarCloud</span></a>
</li>
</ul>
</nav>
</div>
<article class="page" itemscope itemtype="http://schema.org/CreativeWork">
<meta itemprop="headline" content="Contributing to Apache ServiceComb">
<meta itemprop="description" content="Contributing to Apache ServiceComb">
<meta itemprop="dateModified" content="May 20, 2018">
<div class="page__inner-wrap">
<header>
<h1 class="page__title" itemprop="headline">Contributing to Apache ServiceComb
</h1>
</header>
<section class="page__content" itemprop="text">
<aside class="sidebar__right">
<nav class="toc">
<!-- <header><h4 class="nav__title"><i class="fa fa-file-text"></i> On This Page</h4></header> -->
<ul class="toc__menu" id="markdown-toc">
<li><a href="#contributing-to-apache-servicecomb" id="markdown-toc-contributing-to-apache-servicecomb">Contributing to Apache ServiceComb</a></li>
<li><a href="#getting-in-touch" id="markdown-toc-getting-in-touch">Getting in touch</a></li>
<li><a href="#improving-the-documentation" id="markdown-toc-improving-the-documentation">Improving the documentation</a></li>
<li><a href="#if-you-find-a-bug-or-problem" id="markdown-toc-if-you-find-a-bug-or-problem">If you find a bug or problem</a></li>
<li><a href="#working-on-the-code" id="markdown-toc-working-on-the-code">Working on the code</a></li>
</ul>
</nav>
</aside>
<h2 id="contributing-to-apache-servicecomb">Contributing to Apache ServiceComb</h2>
<p>There are many ways that you can help make ServiceComb a better piece of solution for the Microservice - please dive in and help!</p>
<ul>
<li>Try surf the documentations - if somethings confusing or not clear, let us know.</li>
<li>Download the code &amp; try it out and see what you think.</li>
<li>Browse the source code. Ask question in the Gitter if you want to know more detail about the code.</li>
<li>Want to do some hacking? take a look at our <a href="https://issues.apache.org/jira/browse/SCB">issue tracker</a> for open issues or features that need to implemented, take ownership of an issue and try fix it.</li>
<li>If you are a new to ServiceComb and would like to help us, you can also find <a href="https://issues.apache.org/jira/browse/SCB-333?jql=project%20%3D%20SCB%20AND%20status%20%3D%20Open%20AND%20fixVersion%20in%20(EMPTY%2C%20java-chassis-1.0.0-m2)%20AND%20labels%20%3D%20newbie">some easy to resolve issues</a>.</li>
<li>Leave a comment on the issue to let us know you are working on it and add yourself as a watcher to get informed about all modifications.</li>
</ul>
<h2 id="getting-in-touch">Getting in touch</h2>
<p>There are various ways of communicating with the ServiceComb community.</p>
<ul>
<li>Join us on the <a href="http://servicecomb.apache.org/cn/developers/subscribe-mail-list">mailing list</a> and take part in any conversations</li>
<li>Pop by on <a href="https://gitter.im/ServiceCombUsers/Lobby">Gitter</a> and say hi</li>
</ul>
<h2 id="improving-the-documentation">Improving the documentation</h2>
<p>Documentation is massively important to help users make the most of Apache ServiceComb and its probably the area that needs the most help!
So if you are interested in helping the documentation effort; whether its just to fix a page here or there, correct a link or even write a tutorial or improve what documentation is already there please do dive in and help!
Most of the documentation is stored as the markdown text, you can edit this page in the website from the below edit it link if you logined in the github, then you can send a PR for it.</p>
<h2 id="if-you-find-a-bug-or-problem">If you find a bug or problem</h2>
<p>Please raise a new issue in our <a href="https://issues.apache.org/jira/browse/SCB">issue tracker</a>
If you can create a JUnit test case then your issue is more likely to be resolved quicker.
e.g. take a look at some of the existing <a href="https://github.com/apache/servicecomb-pack/tree/master/alpha/alpha-core/src/test/java/org/apache/servicecomb/pack/alpha/core">unit tests cases</a>
Then we can add your issue to git and then we’ll know when its really fixed and we can ensure that the problem stays fixed in future releases.</p>
<h2 id="working-on-the-code">Working on the code</h2>
<p>We recommend to work on the code from <a href="https://github.com/search?q=org%3Aapache+servicecomb">Github</a>, it has the following sub-projects:
| Project Name | Project Introduction | Programming Language |
|——————————————————————————-|—————————-|———-|
| <a href="https://github.com/apache/servicecomb-java-chassis">servicecomb-java-chassis</a> | Java Microservice Framework(SDK) | Java |
| <a href="https://github.com/apache/servicecomb-service-center">servicecomb-service-center</a> | Service registration and discovery | Golang |
| <a href="https://github.com/apache/servicecomb-pack">servicecomb-pack</a> | Distributed transaction schemes,support Saga and TCC | Java |
| <a href="https://github.com/apache/servicecomb-Mesher">servicecomb-mesher</a> | Service Mesh implementation of ServiceComb | Golang |
| <a href="https://github.com/apache/servicecomb-kie">servicecomb-kie</a> | Microsevice configure center | Golang |
| <a href="https://github.com/apache/servicecomb-toolkit">servicecomb-toolkit</a> | A contract-based Microservice development toolkit | Java |
| <a href="https://github.com/apache/servicecomb-samples">servicecomb-samples</a> | Microservice examples of ServiceComb | Java |
| <a href="https://github.com/apache/servicecomb-fence">servicecomb-fence</a> | Apache ServiceComb security module for java-chassis | Java |
| <a href="https://github.com/apache/servicecomb-docs">servicecomb-docs</a> | User manual | CSS |
| <a href="https://github.com/apache/servicecomb-website">servicecomb-website</a> | Website | HTML |
| <a href="https://github.com/apache/servicecomb-saga-actuator">servicecomb-saga-actuator</a> | Centralized Saga Transaction Coordinator <em>Archived</em> | Java |</p>
<p>If you intend to work on the code and provide patches and other work you want to submit to the Apache ServiceComb projects, then you can fork the project on github and work on your own fork. The custom work you do should be done on branches you create, which can then be committed and pushed upstream, and then submitted to Apache ServiceComb as PRs (pull requests). You can find many resources online how to work on github projects and how to submit work to these projects.</p>
</section>
<footer class="page__meta">
</footer>
</div>
</article>
</div>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<div align="center" style="margin: 0 0;">
<ins class="adsbygoogle"
style="display:block; border-bottom: initial;"
data-ad-client="ca-pub-7328585512091257"
data-ad-slot="3049671934"
data-ad-format="auto"></ins>
</div>
<div class="page__footer">
<footer>
<!-- start custom footer snippets -->
<!-- end custom footer snippets -->
<div class="container">
<div class="row justify-content-md-center">
<div class="col">
<ul>
<p class="header">Resources</p>
<li><a href="/docs/getting-started/">Getting started</a></li>
<li><a href="/docs/users/">User Guide</a></li>
<li><a href="/slides/">Slides</a></li>
<li><a href="/users/faq/">Common Questions</a></li>
</ul>
</div>
<div class="col">
<ul>
<p class="header">ASF</p>
<li><a href="http://www.apache.org">Foundation</a></li>
<li><a href="http://www.apache.org/licenses/">License</a></li>
<li><a href="http://www.apache.org/events/current-event">Events</a></li>
<li><a href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
<li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
</ul>
</div>
<div class="col">
<ul>
<p class="header">Contribute</p>
<li><a href="http://issues.apache.org/jira/browse/SCB">Report a Doc Issue</a></li>
<li><a href="https://github.com/apache/servicecomb-website/edit/master/_developers/contributing.md">Edit This Page on Github</a></li>
<li><a href="/developers/submit-codes/">Code Submit Guide</a></li>
<li><a href="/security">Security</a></li>
</ul>
</div>
<div class="col">
<ul class="social-icons">
<p class="header">Community</p>
<li>
<a href="mailto:dev-subscribe@servicecomb.incubator.apache.org" rel="nofollow"><span class="mail">Mailing List</span></a>
</li>
<li>
<a href="https://github.com/apache?q=ServiceComb" target="_blank"><span class="github">Github</span></a>
</li>
<li>
<a href="https://twitter.com/ServiceComb" target="_blank"><span class="twitter">Twitter</span></a>
</li>
<li>
<a href="/feed.xml" target="_blank"><span class="rss">Feed</span></a>
</li>
</ul>
</div>
</div>
</div>
<div class="page__footer-bottom">
<div>&copy; 2019 Apache ServiceComb. Powered by <a href="http://jekyllrb.com" rel="nofollow">Jekyll</a> &amp; <a href="https://mademistakes.com/work/minimal-mistakes-jekyll-theme/" rel="nofollow">Minimal Mistakes</a>.</div>
<div>All other marks mentioned may be trademarks or registered trademarks of their respective owners.</div>
</div>
</footer>
</div>
<script src="/assets/js/main.min.js"></script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-101622733-1', 'auto');
ga('send', 'pageview');
</script>
</body>
</html>