Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3
Table of Contents
minLevel2

How to Contribute to HCatalog

...

Code Block
svn checkout http://svn.apache.org/repos/asf/incubator/hcatalog/trunk/

The HCatalog SVN repository is synced to a read-only git repository. This git repo is provided as a developer convenience, with SVN being the only writable repo.

Code Block

git clone git://git.apache.org/hcatalog.git

Contributor Roadmaps

As an Apache project, HCatalog features are community-driven rather than centrally planned. For this reason, its important for contributors to communicate at a high-level the features they plan on developing, so others understand what's being contributed, how it affects existing goals, and can meaningfully provide feedback.

For some issues, the Jira description may be enough. For larger projects, an umbrella Jira or design doc in the wiki would be appropriate. As a rule of thumb, if a feature will be implemented as more than three Jiras an umbrella issue or design doc should be used.

Making Changes

Before you start, send a message to the HCatalog developer mailing list, or file a bug report in JIRA. Describe your proposed changes and check that they fit in with what others are doing and have planned for the project. Be patient, it may take folks a while to understand your requirements.

...

This way other developers can preview your change by running the script and then applying the patch.

Creating a patch with git

Please see the main "Creating a patch" section for details about what to include in your patch. When creating a patch with git make sure to use the following command so the resulting diff will apply in the main SVN repo.

Code Block

git diff --no-prefix

Applying a patch

To apply a patch either you generated or found from JIRA, you can issue

...

  1. Right click project name in Package Explorer,
  2. Team -> Apply Patch

Contributing your work

Finally, patches should be Your work is ready for contribution! Contributions are made as patch files attached to a bug report in JIRA via the Attach File link on the JIRAJIRA issue describing the details of the change. Contribute your work as follows:

  • For non-trivial issues, please create a Review Board review at https://reviews.apache.org. Doing so makes your review much easier for a committer to review.
  • Navigate to the JIRA issue tracking your change. Select More Actions –> Attach Files and attach your patch. Please add a comment that asks for a code review following our code review checklist, including a link to the reviewboard if one was created. Please note that the attachment should be granted license to ASF for inclusion in ASF works (as per the Apache License subsection 5). If it is not we will not be able to commit your patch.
  • Click the Submit Patch button which changes the issue state to Patch Available so this issue is included in the review queue saved search.

If your patch involves performance optimizations, they should be validated by benchmarks that demonstrate an improvement.

...

Please refrain from editing descriptions and comments if possible, as edits spam the mailing list and clutter JIRA's "All" display, which is otherwise very useful. Instead, preview descriptions and comments using the preview button (on the right) before posting them. Keep descriptions brief and save more elaborate proposals for comments, since descriptions are included in JIRA's automatically sent messages. If you change your mind, note this in a new comment, rather than editing an older comment. The issue should preserve this history of the discussion.

When committed, the committer will mark the issue as resolved, but not close it. The issue should remain open until a release containing the issue has been released. As closed issues cannot be reopened, this allows people who experience problems with the patch to reopen it. It also provides a clear signal to others whether the issue is available in a public release.

Stay involved

Contributors should join the HCatalog mailing lists. In particular, the commit list (to see changes as they are made), the dev list (to join discussions of changes) and the user list (to help others).

...