<commit_before>---
layout: global
title: Contributing Guidelines
nickname: Contributing Guidelines
group: Resources
---

* Table of Contents
{:toc}

Thank you for your interest in Alluxio! We greatly appreciate any new features or fixes.

### New Contributors

If you are a new contributor to the Alluxio open source project, please visit the
[Contributing Getting Started Guide](Contributing-Getting-Started.html) for a tutorial on how to
contribute to Alluxio.

### Alluxio Getting Started Tasks

There are a few things that new contributors can do to familiarize themselves with Alluxio:

1.  [Run Alluxio Locally](Running-Alluxio-Locally.html)

2.  [Run Alluxio on a Cluster](Running-Alluxio-on-a-Cluster.html)

3.  Read [Configuration-Settings](Configuration-Settings.html) and [Command-Line Interface](Command-Line-Interface.html)

4.  Read a
    [Code Example](https://github.com/alluxio/alluxio/blob/master/examples/src/main/java/alluxio/examples/BasicOperations.java)

5.  [Build Alluxio Master Branch](Building-Alluxio-Master-Branch.html)

6.  Fork the repository, add unit tests or javadoc for one or two files, and submit a pull request. You are also welcome to address
issues in our [JIRA](https://alluxio.atlassian.net/browse/ALLUXIO).
Here is a list of
[tasks](https://alluxio.atlassian.net/issues/?jql=project%20%3D%20ALLUXIO%20AND%20labels%20%3D%20NewContributor%20AND%20status%20%3D%20OPEN)
for New Contributors. Please limit 2 tasks per New Contributor.
Afterwards, try some Beginner/Intermediate tasks, or ask in the
[User Mailing List](https://groups.google.com/forum/?fromgroups#!forum/alluxio-users).
For a tutorial, see the GitHub guides on
[forking a repo](https://help.github.com/articles/fork-a-repo) and
[sending a pull request](https://help.github.com/articles/using-pull-requests).

### Submitting Code

-   We encourage you to break your work into small, single-purpose patches if possible. It is much
    harder to merge in a large change with a lot of disjoint features.

-   We track issues and features in our [JIRA](https://alluxio.atlassian.net/). If you have not
    registered an account, please do so!

-   Open a ticket in [JIRA](https://alluxio.atlassian.net/) detailing the proposed change and what
    purpose it serves.

-   Submit the patch as a GitHub pull request. For a tutorial, see the GitHub guides on
    [forking a repo](https://help.github.com/articles/fork-a-repo) and
    [sending a pull request](https://help.github.com/articles/using-pull-requests).

-   In your pull request title, make sure to reference the JIRA ticket. This will connect the
    ticket to the proposed code changes. for example:

~~~~~
[ALLUXIO-100] Implement an awesome new feature
~~~~~

-   Add a GitHub label describing which component of Alluxio your change falls under. If you're
    unsure, pick whichever component you think fits best, and the maintainer of the component
    will relabel the pull request if necessary.

-   In the description field of the pull request, please include a link to the JIRA ticket.


Note that for some minor changes it is not required to create corresponding JIRA tickets before
submiting the pull requests. For instance:

-   For pull requests that only address typos or formatting issues in source code, you
    can prefix the titles of your pull requests with "[SMALLFIX]", for example:

~~~~~
[SMALLFIX] Fix formatting in Foo.java
~~~~~<commit_msg>Add note that components correspond with folders<commit_after>---
layout: global
title: Contributing Guidelines
nickname: Contributing Guidelines
group: Resources
---

* Table of Contents
{:toc}

Thank you for your interest in Alluxio! We greatly appreciate any new features or fixes.

### New Contributors

If you are a new contributor to the Alluxio open source project, please visit the
[Contributing Getting Started Guide](Contributing-Getting-Started.html) for a tutorial on how to
contribute to Alluxio.

### Alluxio Getting Started Tasks

There are a few things that new contributors can do to familiarize themselves with Alluxio:

1.  [Run Alluxio Locally](Running-Alluxio-Locally.html)

2.  [Run Alluxio on a Cluster](Running-Alluxio-on-a-Cluster.html)

3.  Read [Configuration-Settings](Configuration-Settings.html) and [Command-Line Interface](Command-Line-Interface.html)

4.  Read a
    [Code Example](https://github.com/alluxio/alluxio/blob/master/examples/src/main/java/alluxio/examples/BasicOperations.java)

5.  [Build Alluxio Master Branch](Building-Alluxio-Master-Branch.html)

6.  Fork the repository, add unit tests or javadoc for one or two files, and submit a pull request. You are also welcome to address
issues in our [JIRA](https://alluxio.atlassian.net/browse/ALLUXIO).
Here is a list of
[tasks](https://alluxio.atlassian.net/issues/?jql=project%20%3D%20ALLUXIO%20AND%20labels%20%3D%20NewContributor%20AND%20status%20%3D%20OPEN)
for New Contributors. Please limit 2 tasks per New Contributor.
Afterwards, try some Beginner/Intermediate tasks, or ask in the
[User Mailing List](https://groups.google.com/forum/?fromgroups#!forum/alluxio-users).
For a tutorial, see the GitHub guides on
[forking a repo](https://help.github.com/articles/fork-a-repo) and
[sending a pull request](https://help.github.com/articles/using-pull-requests).

### Submitting Code

-   We encourage you to break your work into small, single-purpose patches if possible. It is much
    harder to merge in a large change with a lot of disjoint features.

-   We track issues and features in our [JIRA](https://alluxio.atlassian.net/). If you have not
    registered an account, please do so!

-   Open a ticket in [JIRA](https://alluxio.atlassian.net/) detailing the proposed change and what
    purpose it serves.

-   Submit the patch as a GitHub pull request. For a tutorial, see the GitHub guides on
    [forking a repo](https://help.github.com/articles/fork-a-repo) and
    [sending a pull request](https://help.github.com/articles/using-pull-requests).

-   In your pull request title, make sure to reference the JIRA ticket. This will connect the
    ticket to the proposed code changes. for example:

~~~~~
[ALLUXIO-100] Implement an awesome new feature
~~~~~

-   Add a GitHub label describing which component of Alluxio your change falls under. If you're
    unsure, pick whichever component you modified the most (components correspond with root-level 
    directories).

-   In the description field of the pull request, please include a link to the JIRA ticket.


Note that for some minor changes it is not required to create corresponding JIRA tickets before
submiting the pull requests. For instance:

-   For pull requests that only address typos or formatting issues in source code, you
    can prefix the titles of your pull requests with "[SMALLFIX]", for example:

~~~~~
[SMALLFIX] Fix formatting in Foo.java
~~~~~
{'fraction_non_alphanumeric': 0.0893169877408056, 'fraction_numerical': 0.009632224168126095, 'mean_word_length': 4.300077339520495, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 20, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6795591', 'n_tokens_mistral': 2086, 'n_tokens_neox': 1983, 'n_words': 798}