The JDK 9 project is experimenting with the idea of Submission Forests. A Submission Forest allows committers to submit a change for automatic build, test and integration with an upstream forest. Initially we have created a jdk9/hs-submit
forest which integrates to jdk9/hs
. This will allow non-Oracle committers to make changes to jdk9/hs
directly while still observing the Hotspot team's conventions for pre-integration build & test. Of course all the usual rules about who may make changes and how they are reviewed and approved still apply.
Submission Forests are modeled after the JDK9 Sandbox Forest. The default branch of the Submission Forest is kept in sync with the upstream forest. Committers do their work on branches with one branch used per fix. When a branch is pushed to the Submission Forest, it is automatically run through a pre-defined set of builds and tests. If this succeeds, the work is moved as a single changeset to the default branch of the upstream forest. If a branch fails to build, pass tests or merge successfully into the upstream forest, no changes are made upstream. At the end of the process a status email is sent to the committer.
FAQ
Why should I not push to the default branch?
What should I call my branch?
How should I create a branch?
How should I push a branch?
What if my submission fails?
Is jcheck used?
How do I supply a commit message for my change?
How is my branch merged with the upstream forest?
How are changes from upstream brought into the submission forest?
How should I create my local forest?
How can I create a webrev for my branch?
Should I close my branch?
Can I reuse a branch for a different fix?
- Clone and update to a branch
- Pull and update to a branch
- Push a change to a branch
- Update a branch with the latest main-line changes
- Show all the changesets for a given branch