These notes recommend how contributors should work with git. To understand these notes, the only real concepts that you need to grok are:
For more background reading, see:
And, of course, there is loads of good advice on stackoverflow.com
There are many ways of using Git, but the only real prescriptive advice here is:
commits should only have one parent.
Doing this keeps the commit history clean; even though work actually happens in parallel, in the commit history it will look like all work was done serially.
This is accomplished using
git rebase; the idea being that any changes that you make locally are re-applied on top of the latest fetch from the
master branch. The cookbook page describes how to do this in detail.
Many other projects also work this way; a good write-up of how SpringSocial use git can be found here.
The minimum we expect in a commit messages is:
ISIS-nnn: brief summary here - optionally, longer details - should be written here - in bullet points
ISIS-nnn is a ticket raised in our JIRA issue tracker.
For non-committers we typically expect more detail again; see the contributing page for the longer format recommended for contributors to use.
All edits are reviewed before going live, so feel free to do much more than fix typos or links. If you see a page that could benefit from an entire rewrite, we'd be thrilled to review it. Don't be surprised if we like it so much we ask you for help with other pages :)NOTICE: unless indicated otherwise on the pages in question, all editable content available from apache.org is presumed to be licensed under the Apache License (AL) version 2.0 and hence all submissions to apache.org treated as formal Contributions under the license terms.