You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

1) file JIRA ticket GEODE-nn on Apache JIRA
Note: JIRA automatically assigns the name GEODE-nn where nn is the actual ticket number

2) assign ticket to yourself (click "Assign to me" in JIRA)

3) change ticket status from OPEN to IN PROGRESS (click "Start Progress" in JIRA)

4) cd to geode checkout

 


5) start the feature branch for GEODE-nn

 

git flow feature start GEODE-nn

 


Without git flow:
git checkout develop
git pull --rebase
git checkout -b feature/GEODE-nn

6) work on the changes and tests for GEODE-nn (include GEODE-nn in commit messages)
Commit messages should follow this format:

 

GEODE-nn: Capitalized, 50 chars or less summary
 
More detailed explanation with linefeeds to wrap at 72 characters after
a blank line following the summary.
 
Further paragraphs come after blank lines.
 
- Bullet points are okay, too (or *)
 
- Typically a hyphen or asterisk is used for the bullet, followed by a
  single space, with blank lines in between, but conventions vary here
 
- Use a hanging indent

 


7) [optional] publish the feature branch to share with others or other machine

 

git flow feature publish GEODE-nn

 


Without git flow:
git push -u origin feature/GEODE-nn

8) [optional] access feature branch from other machine

 

git flow feature track GEODE-nn

 



Without git flow:
git fetch
git checkout feature/GEODE-nn
git pull
9) [optional] merge and rebase latest changes on develop to feature branch

Short lived branches where you are the only committer:

 

git fetch
git rebase origin/develop

 


Long lived branches with many committers

 

git fetch
git merge origin/develop

 


10) submit review on Apache Reviews via the rbt command-line tool

To setup rbt for your checkout, just run this once:

 

git config reviewboard.url https://reviews.apache.org/

 


Then to publish a diff, run:

 

rbt post --repository geode

 

11) [alternative] use Apache Reviews web page to submit review for "geode"

 

git diff origin/develop...HEAD > GEODE-nn.diff

 


click New Review Request

  • select "geode"
  • click "Select" and choose diff file to upload
  • fill in information (TODO)
  • add group and users for review
  • "publish" the review

12) update develop in local repository

 

git checkout develop
git pull --rebase

 

 

13) finish feature branch for GEODE-nn

For a short lived feature branch with a few changes that you want to look like individual commits on develop (most branches should use this):

 

git flow feature finish -r GEODE-nn
git rebase -i

 

Without git flow:
git fetch
git checkout feature/GEODE-nn
git rebase -i origin/develop
git checkout develop
git merge feature/GEODE-nn
git branch -D feature/GEODE-nn
git push --delete origin feature/GEODE-nn


For a long lived branch where you want to see the merge history with develop:

 

git flow feature finish --no-ff GEODE-nn

 

Without git flow:
git checkout develop
git pull
git merge --no-ff feature/GEODE-nn
git branch -D feature/GEODE-nn
git push --delete origin feature/GEODE-nn

If you have done a bunch of merges from develop to your feature branch, but you still want to see only a single commit on develop, you can do a squash merge to develop:

 

git flow feature finish -S GEODE-nn

 

Without git flow:
git checkout develop
git pull
git merge --squash feature/GEODE-nn
git branch -D feature/GEODE-nn
git push --delete origin feature/GEODE-nn

14) push

 

git push

 

 

15) change ticket status of GEODE-nn from IN PROGRESS to RESOLVED (click "Resolve Issue" and fill in details). Fill in the "Fixed in Version" to match the next release version. If you are not sure about what the next release version is, you can double check gradle.properties - the next version will be versionNumber.releaseType.
  • No labels