...
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 directly from your feature branchas follows:1.
- 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>" 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
- You should almost always collapse your work into a single check-in in order to avoid cluttering the upstream change-log:
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.
...