Difference between revisions of "Setting up the svn"

From Knowitall
Jump to: navigation, search
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
The svn is located at:
 
The svn is located at:
  
  /projects/WebWare7/nlp-svn/trunk
+
  /projects/WebWare7/nlp-svn/trunk/
 +
 
 +
You can check it out on a department machine with:
 +
 
 +
svn co file:///projects/WebWare7/nlp-svn/trunk/
  
 
Or for an external machine you can use:
 
Or for an external machine you can use:
  
  svn co svn+ssh://USERNAME@turingc.cs.washington.edu/projects/WebWare7/nlp-svn/trunk
+
  svn co svn+ssh://USERNAME@coco.cs.washington.edu/projects/WebWare7/nlp-svn/trunk/
 +
 
 +
== Folder Hierarchy ==
 +
 
 +
As subversion recommends, there are three folders in the svn (projects/WebWare7/nlp-svn/): "trunk", "branch", and "tags".  The above code only checks out "trunk" (which you may or may not want).  "branch" is for when some projects depend on occam, and Tony develops occam++ which is not backwards-compatible.  When he is done, he merges his new code into trunk and fixes the dependencies he has broken.  "tags" is for when we release occam version 1.0 so we can can always check out the tag named "occam1.0" instead of trying to figure out which version number it was.
 +
 
 +
If you add a project to the svn (it'll probably be clear that it goes in the "projects" folder), link it to libraries in the top-level "libraries" folder so multiple projects can use the same library.  The libraries all have symlinks that cut off the version number.  You should probably use the symlink so that we can just change the binary to upgrade the library.
 +
 
 +
== Installing ==
  
 
I have a couple of options for checking out the svn and getting the project to work with Eclipse.   
 
I have a couple of options for checking out the svn and getting the project to work with Eclipse.   
Line 13: Line 25:
 
Create an Eclipse workspace folder and checkout the project inside of it:
 
Create an Eclipse workspace folder and checkout the project inside of it:
  
  svn co svn+ssh://USERNAME@turingc.cs.washington.edu/projects/WebWare7/nlp-svn/trunk
+
  svn co svn+ssh://USERNAME@turingc.cs.washington.edu/projects/WebWare7/nlp-svn/trunk/
  
 
If you need to specify a username, put it after the "//".  Then you need to open your workspace in Eclipse, select the menu item "File -> Import...", select "General -> Existing Projects into Workspace" and add the project.
 
If you need to specify a username, put it after the "//".  Then you need to open your workspace in Eclipse, select the menu item "File -> Import...", select "General -> Existing Projects into Workspace" and add the project.
Line 22: Line 34:
  
 
You should be able to get the project to compile from within Eclipse but you will need to add a project that links to Occam to execute an example.  You can also compile from the command line by running "ant".  Tony has an excellent README and example application (Example.java) in the root directory.
 
You should be able to get the project to compile from within Eclipse but you will need to add a project that links to Occam to execute an example.  You can also compile from the command line by running "ant".  Tony has an excellent README and example application (Example.java) in the root directory.
 +
 +
== Further Reading ==
 +
 +
* If you would like to read more about subversion, I found this document to be short and informative: http://www.abbeyworkshop.com/howto/misc/svn01/
 +
* If you want more information than you need, the subversion documentation is available at: http://svnbook.red-bean.com/en/1.4/

Latest revision as of 19:30, 21 April 2011

The svn is located at:

/projects/WebWare7/nlp-svn/trunk/

You can check it out on a department machine with:

svn co file:///projects/WebWare7/nlp-svn/trunk/

Or for an external machine you can use:

svn co svn+ssh://USERNAME@coco.cs.washington.edu/projects/WebWare7/nlp-svn/trunk/

Folder Hierarchy

As subversion recommends, there are three folders in the svn (projects/WebWare7/nlp-svn/): "trunk", "branch", and "tags". The above code only checks out "trunk" (which you may or may not want). "branch" is for when some projects depend on occam, and Tony develops occam++ which is not backwards-compatible. When he is done, he merges his new code into trunk and fixes the dependencies he has broken. "tags" is for when we release occam version 1.0 so we can can always check out the tag named "occam1.0" instead of trying to figure out which version number it was.

If you add a project to the svn (it'll probably be clear that it goes in the "projects" folder), link it to libraries in the top-level "libraries" folder so multiple projects can use the same library. The libraries all have symlinks that cut off the version number. You should probably use the symlink so that we can just change the binary to upgrade the library.

Installing

I have a couple of options for checking out the svn and getting the project to work with Eclipse.

SVN Command Line

Create an Eclipse workspace folder and checkout the project inside of it:

svn co svn+ssh://USERNAME@turingc.cs.washington.edu/projects/WebWare7/nlp-svn/trunk/

If you need to specify a username, put it after the "//". Then you need to open your workspace in Eclipse, select the menu item "File -> Import...", select "General -> Existing Projects into Workspace" and add the project.

Subclipse Add-on

Install subclipse (http://subclipse.tigris.org/) by following the installation instruction on their homepage. Note that if you are checking it out on a non-network machine you will need to supply credentials. On Linux, this means you need to run Eclipse from the command line and it will ask for the password there when the time comes. Otherwise it won't work (or at least, I have not figured out how to make it work).

You should be able to get the project to compile from within Eclipse but you will need to add a project that links to Occam to execute an example. You can also compile from the command line by running "ant". Tony has an excellent README and example application (Example.java) in the root directory.

Further Reading