...
Contributing to Eagle doesn't just mean writing code. Helping new users on the mailing list, testing releases, and improving documentation are also welcome. In fact, proposing significant code changes usually requires first gaining experience and credibility within the community by helping in other ways. This is also a guide to becoming an effective contributor.
Table of Contents |
---|
Contributing by Helping Other Users
...
This section to help anyone who want to involve and contribute code to eagle project. Apache site have great documentation on how apache build the community and help the open source project. If one wants to know more detail on how apache works, he/she might want to check http://community.apache.org/.
...
JIRA
- Search the user@eagle.incubator.apache.org and dev@eagle.incubator.apache.org mailing list archives for related discussions
- Search JIRA for existing issues: https://issues.apache.org/jira/browse/EAGLE
- Proposing a JIRA and pull request is appropriate only when a clear problem or change has been identified.
...
- Find the existing Eagle JIRA that the change pertains to. If confirmed the change is new, create a new JIRA ticket if required with required fields
- Issue Type
- Priority
- Affects Version
- Issue Type
- Fork one's own feature branch from eagle official github (https://github.com/apache/incubator-eagle/)
- Fix bug / Develop feature in the feature branch. One might have multiple
- After development is done, send a github pull request. Like https://github.com/apache/incubator-eagle/pull/19. NOTE: Please make sure the pull request title is in format of EAGLE-${ticket_number} ${ticket_title}, so that ASF bot could help sync the pull request comments to JIRA automatically.
Review
...
Process
The committer should follow below process to review the contribution and merge the code.
Review: Committers should Committers will help to review the pull request changes, leave comments and sigh off about whether accept the code change. (Reject/Recall/Pass)
Merge: merge the patch of the pull request and push the merged code to apache/incubbator-eagle.This steps are like (following process is temporary solution for manual merging, the automatic tool is under development EAGLE-84)
Code Block > git pull https://github.com/apache/incubator-eagle/ master # get latest > wget https://patch-diff.githubusercontent.com/raw/apache/incubator-eagle/pull/19.patch && git apply 19.patch # anyway you like to get the patch and apply > # review the code; run the test; > git commit # Commit with the commit MSG described below if everything looks good > git push https://github.com/apache/incubator-eagle/ master # push to upstream
- Committer to close the JIRA ticket. (Pull request will be close automatically)
...
Committers should follow an convention format to add appropriate commit message. The format is
Code Block EAGLE-${ticket_number} ${ticket_title} ${ticket_url} Author: ${commiter} Reviewer: ${reviewer} Closes #${pr_number} from ${do_person}
- Author/Reviewer could be optional when the committer is the single reviewer.
will help build automatic tools to help the steps above.Jira server ASF JIRA serverId 5aa69414-a9e9-3523-82ec-879b028fb15b key EAGLE-84
- Close: Committer to close the JIRA ticket. (Pull request will be close automatically)
Here is a diagram to show the workflow above:Below diagram show a simple flow of above.