ITK/Contribute: Difference between revisions
From KitwarePublic
< ITK
Jump to navigationJump to search
Daviddoria (talk | contribs) m (moved ITKContribute to ITK/Contribute) |
No edit summary |
||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
Please see [https://github.com/InsightSoftwareConsortium/ITK/blob/master/CONTRIBUTING.md CONTRIBUTING.md on GitHub ]. | |||
{{Historical}} | |||
Short guide for best practices process for contributing to ITK. | |||
== Step by step complete documentation provided at == | |||
How to develop new patches http://www.itk.org/Wiki/ITK/Git/Develop | |||
== Bugs/Feature enhancements best practices guide == | == Bugs/Feature enhancements best practices guide == | ||
# Determine if the contribution is already listed in the bug tracker: http://issues.itk.org | # Determine if the contribution is already listed in the bug tracker: http://issues.itk.org | ||
# Add proposed contribution (if necessary) and assign it to yourself (NOTE THE BUG ID link i.e. 2287) | # Add proposed contribution (if necessary) and assign it to yourself (NOTE THE BUG ID link i.e. ITK-2287) | ||
# Create a new branch called " | # Create a new branch called "ITK-2287" from the updated git ITK master branch | ||
# Make proposed changes on branch " | # Make proposed changes on branch "ITK-2287" and thoroughly test the changes | ||
# | # Commit changes with a comment that includes the BUGID | ||
# Submit the commit to ITK code review using gerrit-push | |||
# Close the JIRA issue, and include the commit hash key as a comment when closing. | # Close the JIRA issue, and include the commit hash key as a comment when closing. | ||
Line 18: | Line 29: | ||
<pre> | <pre> | ||
git | git status | ||
git checkout master | git checkout master | ||
git | git pullall | ||
git checkout | git checkout -b ITK-2287 origin/master | ||
vim CMakeLists.txt # Edit to change the version number | vim CMakeLists.txt # Edit to change the version number | ||
git add CMakeLists.txt | git add CMakeLists.txt | ||
git commit | git commit -m"BUG: Issue resolved for bug ITK-2287" | ||
git | git prepush | ||
git gerrit-push | |||
git push | |||
</pre> | </pre> | ||
Latest revision as of 17:28, 2 January 2019
Please see CONTRIBUTING.md on GitHub .
This page is currently inactive and is retained for historical reference. Either the page is no longer relevant or consensus on its purpose has become unclear. To revive discussion, seek broader input via a forum such as the village pump. |
Short guide for best practices process for contributing to ITK.
Step by step complete documentation provided at
How to develop new patches http://www.itk.org/Wiki/ITK/Git/Develop
Bugs/Feature enhancements best practices guide
- Determine if the contribution is already listed in the bug tracker: http://issues.itk.org
- Add proposed contribution (if necessary) and assign it to yourself (NOTE THE BUG ID link i.e. ITK-2287)
- Create a new branch called "ITK-2287" from the updated git ITK master branch
- Make proposed changes on branch "ITK-2287" and thoroughly test the changes
- Commit changes with a comment that includes the BUGID
- Submit the commit to ITK code review using gerrit-push
- Close the JIRA 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 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.