I"C<h3 id="ask-questions">Ask questions</h3>
<p>The Apache Griffin community is eager to help and to answer your questions. We have a dev/users mailing list.</p>

<ul>
  <li>dev@griffin.apache.org , <a href="mailto:dev-subscribe@griffin.apache.org">To subscribe dev list</a></li>
  <li>users@griffin.apache.org , <a href="mailto:users-subscribe@griffin.apache.org">To subscribe users list</a></li>
</ul>

<h3 id="file-a-bug-report">File a bug report</h3>
<p>Please let us know if you experienced a problem with Griffin and file a bug report. Open Apache Griffin’s JIRA and click on the blue Create button at the top. Please give detailed information about the problem you encountered and, if possible, add a description that helps to reproduce the problem.</p>

<p><a href="https://issues.apache.org/jira/browse/GRIFFIN">https://issues.apache.org/jira/browse/GRIFFIN</a></p>

<h3 id="propose-an-improvement-or-a-new-feature">Propose an improvement or a new feature</h3>
<p>Our community is constantly looking for feedback to improve Apache Griffin. If you have an idea how to improve Griffin or have a new feature in mind that would be beneficial for Apache Griffin users, please open an issue in Apache Griffin’s JIRA. The improvement or new feature should be described in appropriate detail and include the scope and its requirements if possible.</p>

<p>We recommend to first reach consensus with the community on whether a new feature is required and how to implement a new feature, before starting with the implementation.</p>

<p><a href="https://cwiki.apache.org/confluence/display/GRIFFIN/Apache+Griffin">https://cwiki.apache.org/confluence/display/GRIFFIN/Apache+Griffin</a></p>

<h3 id="help-others-and-join-the-discussions">Help others and join the discussions</h3>
<p>Most communication in the Apache Griffin community happens on two mailing lists:</p>

<p>The users mailing lists users@griffin.apache.org is the place where users of Apache Griffin ask questions and seek for help or advice. Joining the user list and helping other users is a very good way to contribute to Apache Griffin’s community.</p>

<p>The dev mailing list dev@griffin.apache.org is the place where Griffin developers exchange ideas and discuss new features, upcoming releases, and the development process in general. If you are interested in contributing code to Apache Griffin, you should join this mailing list.</p>

<p>You are welcome to subscribe to both mailing lists.</p>

<h3 id="contributing-to-code">Contributing to Code</h3>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code># create jira ticket to specify what you want to do
# https://issues.apache.org/jira/browse/GRIFFIN
# Create one new branch for this task

# first fork this to your own repo -- https://github.com/apache/griffin.git
# then clone your own repo to your local workspace
git clone https://github.com/{YOURNAME}/griffin.git

# change code and push to your repository
# please associate related JIRA TICK in your comments
git commit -am "For task GRIFFIN-10 , blabla..."

# Commit and send PR to us
# Apache GRIFFIN PPMC will review and accept your pr as contributing.

</code></pre></div></div>

<h3 id="how-to-become-a-committer">How to become a committer</h3>

<p>Committers are community members that have write access to the project’s repositories, i.e., they can modify the code, documentation, and website by themselves and also accept other contributions.</p>

<p>There is no strict protocol for becoming a committer. Candidates for new committers are typically people that are active contributors and community members.</p>

<p>Being an active community member means participating on mailing list discussions, helping to answer questions, verifying release candidates, being respectful towards others, and following the meritocratic principles of community management. Since the “Apache Way” has a strong focus on the project community, this part is very important.</p>

<p>Of course, contributing code and documentation to the project is important as well. A good way to start is contributing improvements, new features, or bug fixes. You need to show that you take responsibility for the code that you contribute, add tests and documentation, and help maintaining it.</p>

<p>Candidates for new committers are suggested by current committers or PMC members, and voted upon by the PMC.</p>

<p>If you would like to become a committer, you should engage with the community and start contributing to Apache Griffin in any of the above ways. You might also want to talk to other committers and ask for their advice and guidance.</p>

<h3 id="how-to-configure-committers-mail">How to configure committer’s mail</h3>

<p>Committers are easy to use apache’s mail to communicate on the project’s plan, progress, issue etc. When you get your apache account, you should configure a popular mail system to take over it as apache mail system is plain-vanilla for usage.</p>

<p>Here we give configuration guide below to help you take it easily. We use outlook system as sample.</p>

<ul>
  <li>
    <p>Enable setting<br />
<img src="/images/outlook-setting.png" alt="outlook_setting" /></p>
  </li>
  <li>
    <p>Add apache mail account<br />
<img src="/images/outlook-mail.png" alt="outlook_mail" /></p>
  </li>
</ul>

<p>After those settings, you can use your outlook account to send/receive apache mail.</p>
:ET