...
The process for contributing or reviewing a patch is documented in the Contributing Code Changes page.
Commiter Workflow
If you have commit access on the apache repository then you will not be applying patches in the manner described in the reviewer workflow. Instead, once your patch has been reviewed you will check it in yourself as follows:
Create a branch to work on:
Code Block git fetch git checkout -b xyz remotes/origin/trunk
- Implement the feature.
Rebase:
Code Block git rebase remotes/origin/trunk
- Post the change to JIRA and get it reviewed.
- Push the change back to Apache. Pick one of the following:
You should almost always collapse your work into a single check-in in order to avoid cluttering the upstream change-log:
Code Block # assuming trunk is up-to-date with origin git checkout trunk git merge --squash xyz git commit -am "KAFKA-XXX xyz feature; reviewed by <reviewers>" --author="firstname lastname <contributoremail>" git push origin trunk
If you are absolutely sure you want to preserve your local intermediate check-in history then push directly from your feature branch instead of the above merge (or use merge without the squash option):
Code Block # from feature branch xyz git push origin trunk
[Note] For reviewer and simple committer workflow, remember to resolve the corresponding JIRA ticket and mark the fix versions label after the corresponding patch is committed.
are merging a patch attached to a JIRA (and not a github PR), here is a suggested workflow.
Github Workflow
Apache doesn't seem to provide a place to stash your work-in-progress branches or provide some of the nice social features github has. This can be a problem for larger features. Here are instructions for using github as a place to stash your work in progress changes.
...