Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. First you need to ask yourself, which branch you need to commit into ? Usually you should commit it to master, if there's one release based on another branch, you should also commit into that branch ( use cherry-pick as below ). If you are not sure about this , send a message to the Tez developer mailing list.
  2. For each commit, you should also update the CHANGES.txt, including which release this JIRA will go in and whether it is an INCOMPATIBLE CHANGES

...

Code Block
git pull origin master // pull master each time before you commit
git branch TEZ-100
git checkout TEZ-100
... // work on jira, don't forget update CHANGES.txt
git commit -m 'TEZ-100. JIRA Title (author<Contributor> via <committer id>)' // or just (<committerid>) if the committer is the author. please follow this format of commit message 
git log // check whether the commit is succeeded
git checkout master
git merge TEZ-100
git log // check whether the merge is succeeded and ensure that the log contains just the new commit. It should not contain any "Merge" related messages.
git push origin master:master // push local master to remote master
 
// cherry-pick to another branch (example branch-0.5)
git log // copy the hash value of the commit you want to cherry-pick
git checkout branch-0.5
git cherry-pick -x ${HashValue}   // don't forget the "-x"
git log // check whether the cherry-pick is succeeded, you should see logs like this, the last line will only show when you add "-x" 
        // commit eb054c8cd26144d83b6b3d91c8d5d3dd882f6ae0
        // Author: Hitesh Shah <hitesh@apache.org>
        // Date:   Sat Oct 18 09:35:15 2014 -0700
        // TEZ-1683. Do ugi::getGroups only when necessary when checking ACLs. (hitesh)
        // (cherry picked from commit 83b0c3db9777dc4ebe76963571d4be4ce6985873)
 
// Resolve the conflict if the cherry-pick fails sometimes
// After you resolve the conflict, call the following command
git cherry-pick --continue
git push origin branch-0.5:branch-0.5 // push local branch-0.5 to remote branch-0.5

...

When you complete the committing, you'd better to check the repository https://git-wip-us.apache.org/repos/asf?p=tez.git;a=summary whether the commit is pushed correctly. 

Then add comments to the JIRA which branch you committed.Update the JIRA with the details to which branches the patch was committed. Please be sure to thank the author of the patch as well as any reviewers.

And then resolve the JIRA (Don't close it, release manager will close it after it is released with the required Fix Version set. The Fix Version is based on the final branch of commit. For example, a commit to branch-0.5 will imply that the fix version is the next unreleased version of 0.5.x. A commit to master only implies that the Fix Version should be set to the next major release ( for now, 0.x are considered major releases ).  (Do not mark the JIRA as Closed. This will be done by the Release Manager after a release with the changes has been published )

Your first commit

Once you become Tez Committer, you should have commit access to tez repository. You should first create a JIRA ticket for adding yourself to team list and take this as your first commit. 

...