ITK/Contribute: Difference between revisions
From KitwarePublic
< ITK
Jump to navigationJump to search
Hjmjohnson (talk | contribs) (New page that helps describes best practices of how to identify, workon, and commit changes to ITK.) |
No edit summary |
||
Line 32: | Line 32: | ||
Close the Mantis issue with reference to the commit hash key. | Close the Mantis issue with reference to the commit hash key. | ||
== Changing commit history == | |||
Git has some powerful tools to refactor the commit history. For example, | |||
<pre> | |||
git commit --amend | |||
</pre> | |||
can be used to change the content or commit message from the last commit. | |||
<pre> | |||
git rebase -i | |||
</pre> | |||
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. |
Revision as of 18:26, 30 July 2010
Best practices process for contributing to ITK.
Bugs/Feature enhancements best practices guide
- Determine if the contribution is already listed in the bug tracker: http://public.kitware.com/Bug/my_view_page.php
- Add proposed contribution (if necessary) and assign it to yourself (NOTE THE BUG ID link i.e. 0011074)
- Create a new branch called "BUG0011074" from the updated git ITK master branch
- Make proposed changes on branch "BUG0011074", thoroughly test changes, submit dashboard indicating (NOTE THE DASHBOARD link )
- Merge BUG0011074 branch into master, commit changes with a comment that includes both the BUGID and link to dashboard indicating that the contribution introduces no new errors.
- Close the Mantis issue, and include the commit hash key as a comment when closing.
Example
To update the ITK version number, the follow process could be followed:
Create a Mantis issue stating what you want to accomplish: [1] Assign issue to yourself.
git fetch origin git checkout master git branch BUG0011074 git checkout BUG0011074 vim CMakeLists.txt # Edit to change the version number git add CMakeLists.txt git commit git checkout master git merge BUG0011074 git push origin git branch -d BUG0011074
Close the Mantis 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.