Difference between revisions of "Documentation/Nightly/Developers/Tutorials/ContributePatch"

From Slicer Wiki
Jump to: navigation, search
m
 
(4 intermediate revisions by the same user not shown)
Line 2: Line 2:
 
The following instructions describes the recommended workflow to contribute patch to Slicer code base.  
 
The following instructions describes the recommended workflow to contribute patch to Slicer code base.  
  
It is assumed that you followed the [[Documentation/Nightly/Developers/StartHere#New_community_member_checklist|New community member checklist]], have a clone of https://github.com/Slicer/Slicer/ and have setup the development environment as described in the [[Documentation/Nightly/Developers/DevelopmentWithGit#Slicer_Setup | here]].
+
It is assumed that you followed the [[Documentation/Nightly/Developers/StartHere#New_community_member_checklist|New community member checklist]], have a clone of https://github.com/Slicer/Slicer/ and have setup the development environment as described [[Documentation/Nightly/Developers/DevelopmentWithGit#Slicer_Setup | here]].
 
+
<!--
 
'''If not already done, make sure to read the [[Documentation/{{documentation/version}}/Developers/Style_Guide|Slicer Coding Style Guide]] :-)'''
 
'''If not already done, make sure to read the [[Documentation/{{documentation/version}}/Developers/Style_Guide|Slicer Coding Style Guide]] :-)'''
 
+
-->
 
<ol start="1" style="list-style-type: decimal;">
 
<ol start="1" style="list-style-type: decimal;">
  
<li><p>Create an issue in the [http://na-mic.org/Mantis/bug_report_page.php tracker]. For example, see issue [http://na-mic.org/Mantis/view.php?id=1906 #1906]</p></li>
+
<li>
 +
  <p>Create an issue in the [http://na-mic.org/Mantis/bug_report_page.php tracker] setting <i>severity</i> to <i>feature</i>. For example, see issue [http://na-mic.org/Mantis/view.php?id=1906 #1906]</p>
 +
  {{remark|lightgreen|For simple changes (e.g typo, ...), this step is optional.}}
 +
</li>
  
<li><p>Make sure your fork has a [https://help.github.com/articles/adding-a-remote git remote]. Replace <code>jcfr</code> with your git login.</p>
+
<li><p>Make sure your clone has a [https://help.github.com/articles/adding-a-remote git remote]. After [https://help.github.com/articles/fork-a-repo forking Slicer repository], replace <code>jcfr</code> with your git login.</p>
 
<pre>
 
<pre>
 
git remote add jcfr git@github.com:jcfr/Slicer.git
 
git remote add jcfr git@github.com:jcfr/Slicer.git
Line 23: Line 26:
  
 
<li>
 
<li>
   <p>Hack, hack, hack and commit your change</p>
+
   <p>Fix the code or implement your feature, then commit your change(s)</p>
   <ol style="list-style-type:none; border-left:thick solid red; padding-left:1em;">
+
   {{remark|red|Make sure to read the [[Documentation/{{documentation/version}}/Developers/Style_Guide|Slicer Coding and Commit Style Guide]]}}
    <li>Make sure to read the [[Documentation/{{documentation/version}}/Developers/Style_Guide|Slicer Coding and Commit Style Guide]] </li>
 
  </ol>
 
 
</li>
 
</li>
  
Line 35: Line 36:
 
</li>
 
</li>
  
<li><p>Add a note to the issue with a link pointing to your topic. For example, see note [http://na-mic.org/Mantis/view.php?id=1906#c4578 1906#c4578]</p></li>
+
<li><p>Create a [https://help.github.com/articles/creating-a-pull-request/ Pull Request] and add a note to the issue with a link pointing to your topic. For example, see note [http://na-mic.org/Mantis/view.php?id=1906#c4578 1906#c4578]</p></li>
  
 
<!--
 
<!--

Latest revision as of 14:43, 31 January 2017

Home < Documentation < Nightly < Developers < Tutorials < ContributePatch


For the latest Slicer documentation, visit the read-the-docs.


The following instructions describes the recommended workflow to contribute patch to Slicer code base.

It is assumed that you followed the New community member checklist, have a clone of https://github.com/Slicer/Slicer/ and have setup the development environment as described here.

  1. Create an issue in the tracker setting severity to feature. For example, see issue #1906

    1. For simple changes (e.g typo, ...), this step is optional.
  2. Make sure your clone has a git remote. After forking Slicer repository, replace jcfr with your git login.

    git remote add jcfr git@github.com:jcfr/Slicer.git
    
  3. Create a topic named <issuer_number>-a-descriptive-topic-name. For example:

    git checkout -b 1906-uninstall-extensions-on-restart
    
  4. Fix the code or implement your feature, then commit your change(s)

    1. Make sure to read the Slicer Coding and Commit Style Guide
  5. Publish the topic on your fork

    git push jcfr 1906-uninstall-extensions-on-restart
    
  6. Create a Pull Request and add a note to the issue with a link pointing to your topic. For example, see note 1906#c4578