Difference between revisions of "Slicer3:Contributing codes to Slicer3"

From Slicer Wiki
Jump to: navigation, search
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
 
=Objective=
 
=Objective=
The goal of this page is to give quick instruction to download Slicer3 from Subversion Control (SVN) server, and contribute codes by committing them back to SVN.
+
The goal of this page is to give quick instructions on how to download Slicer3 from the Subversion Control (SVN) server, and contribute code by committing changes back to SVN. More general instructions for developers are available [http://slicer.org/pages/DeveloperOrientation here].
  
If you are interested in contributing to slicer, please contact the slicer-devel [http://www.slicer.org/pages/Mailinglist mailing list] with information about what you have in mind.
+
If you are interested in contributing to Slicer3, please contact the slicer-devel [http://www.slicer.org/pages/Mailinglist mailing list] with information about what you have in mind.
  
 
Also, consider using the [[Slicer3:Extensions|extension mechanism]] to prototype new functionality.
 
Also, consider using the [[Slicer3:Extensions|extension mechanism]] to prototype new functionality.
Line 8: Line 8:
 
See [http://www.na-mic.org/Wiki/index.php/Engineering:Subversion_Repository this page for more information about subversion].
 
See [http://www.na-mic.org/Wiki/index.php/Engineering:Subversion_Repository this page for more information about subversion].
  
 +
See also this information on using [[Slicer3:git-svn|git's interface to svn for slicer3 development]].
 
   
 
   
 
== How to obtain Slicer 3 code from SVN ==
 
== How to obtain Slicer 3 code from SVN ==
  
The Slicer3 svn repository sits in a server at Brigham and Women's Hospital in Boston. You can checkout codes by:
+
The Slicer3 svn repository sits on a server at Brigham and Women's Hospital in Boston. You can check out code to your local machine by:
  
 
  svn co http://svn.slicer.org/Slicer3/trunk Slicer3
 
  svn co http://svn.slicer.org/Slicer3/trunk Slicer3
  
'''You don't need to obtain an account discussed below''' if you don't commit code back to the sever, but we enthusiastically invite you to do so.
+
'''You don't need to obtain an account discussed below''' if you don't intend to commit code back to the sever, but we enthusiastically invite you to do so.
  
== How to commit codes ==
+
== How to commit code ==
  
First, fill this [https://www.kitware.com/Admin/SendPassword.cgi form] and under Comment type '''''Request password for Slicer'''''.  Once you have access to write to SVN, you can work with repository using the following commands:
+
First, fill this [https://www.kitware.com/Admin/SendPassword.cgi form] and under Comment type '''''Request password for Slicer'''''.  Once you have write access to SVN, you can work with the repository using the following commands:
  
To update repository:
+
To update your local copy from the repository:
  
 
  svn update
 
  svn update
  
To check current state of your edits:
+
To check the current state of your local copy:
  
 
  svn status
 
  svn status
Line 33: Line 34:
 
  svn -u status
 
  svn -u status
  
To add new file:
+
To add a new file, first register it with the repository:
  
 
  svn add filename
 
  svn add filename
  
followed by (very important):
+
and then (very important):
  
  svn commit -m"ENH: Adding a new file" filename
+
  svn commit -m "ENH: Adding a new file for X" filename
  
To remove file:
+
To remove a file:
  
 
  svn remove filename
 
  svn remove filename
  
To rename file:
+
To rename a file:
  
  svn move oldname newname
+
  svn move oldfilename newfilename
  
If the update results in conflict, fix the file first before commiting it.
+
If the update results in a conflict, fix the file first before commiting it.
  
 
Once you have fixed the file:
 
Once you have fixed the file:
  
  svn resolved <filename>
+
  svn resolved filename
  
==GUI tools for eash SVN handling==
+
==GUI tools for easy SVN handling==
It is handy to use GUI tool for SVN. I particulary like a cross-platform GUI tool called [http://rapidsvn.tigris.org/ RapidSVN].
+
 
 +
It is handy to use a GUI tool for SVN. I particulary like a cross-platform GUI tool called [http://rapidsvn.tigris.org/ RapidSVN].

Latest revision as of 18:07, 16 November 2010

Home < Slicer3:Contributing codes to Slicer3

Objective

The goal of this page is to give quick instructions on how to download Slicer3 from the Subversion Control (SVN) server, and contribute code by committing changes back to SVN. More general instructions for developers are available here.

If you are interested in contributing to Slicer3, please contact the slicer-devel mailing list with information about what you have in mind.

Also, consider using the extension mechanism to prototype new functionality.

See this page for more information about subversion.

See also this information on using git's interface to svn for slicer3 development.

How to obtain Slicer 3 code from SVN

The Slicer3 svn repository sits on a server at Brigham and Women's Hospital in Boston. You can check out code to your local machine by:

svn co http://svn.slicer.org/Slicer3/trunk Slicer3

You don't need to obtain an account discussed below if you don't intend to commit code back to the sever, but we enthusiastically invite you to do so.

How to commit code

First, fill this form and under Comment type Request password for Slicer. Once you have write access to SVN, you can work with the repository using the following commands:

To update your local copy from the repository:

svn update

To check the current state of your local copy:

svn status

To check the current state compared to the repository:

svn -u status

To add a new file, first register it with the repository:

svn add filename

and then (very important):

svn commit -m "ENH: Adding a new file for X" filename

To remove a file:

svn remove filename

To rename a file:

svn move oldfilename newfilename

If the update results in a conflict, fix the file first before commiting it.

Once you have fixed the file:

svn resolved filename

GUI tools for easy SVN handling

It is handy to use a GUI tool for SVN. I particulary like a cross-platform GUI tool called RapidSVN.