From KitwarePublic
Revision as of 16:21, 4 January 2016 by Dzenanz (talk | contribs) (Update to follow
Jump to navigationJump to search

Short guide for best practices process for contributing to ITK.

Step by step complete documentation provided at

How to develop new patches

Bugs/Feature enhancements best practices guide

  1. Determine if the contribution is already listed in the bug tracker:
  2. Add proposed contribution (if necessary) and assign it to yourself (NOTE THE BUG ID link i.e. ITK-2287)
  3. Create a new branch called "ITK-2287" from the updated git ITK master branch
  4. Make proposed changes on branch "ITK-2287" and thoroughly test the changes
  5. Commit changes with a comment that includes the BUGID
  6. Submit the commit to ITK code review using gerrit-push
  7. Close the JIRA issue, and include the commit hash key as a comment when closing.


To update the ITK version number, the follow process could be followed:

Create a JIRA issue stating what you want to accomplish. Assign issue to yourself.

git status
git checkout master
git pullall
git checkout -b ITK-2287 origin/master
vim CMakeLists.txt   # Edit to change the version number
git add CMakeLists.txt
git commit -m"BUG: Issue resolved for bug ITK-2287"
git prepush
git gerrit-push

Close the JIRA issue with reference to the commit hash key.

Changing commit history

Git has some powerful tools to refactor the commit history. For example,

git commit --amend

can be used to change the content or commit message from the last commit.

git rebase -i

can be used to merge incremental commits into logical units.

These can be very convenient functions, but they should only be used on a local repository before the changes have been published to a public location.