<html><head><title>Sharing a new project</title>
<LINK REL=STYLESHEET HREF=../book.css CHARSET=ISO-8859-1 TYPE=text/css>
<meta NAME="keywords" content="">
<meta NAME="since" content="">
</head><body><h2>Sharing a new project</h2>
<p>Since: 3.0 M8<br>
Last Modified: $Date: 2004/03/18 21:04:58 $</p>

<h3>Scenario 1: Existing location using project name</h3>
<p>Perform the following steps:</p>
<ol>
  <li>Create a new project that does not exist in the repository</li>
  <li>Select Team>Share and select CVS (if there is more than one 
  repository provider available).</li>
  <li>Select a repository and click Next</li>
  <li>Use the project name as the module name. Click Next.</li>
  <li>After a time, the last page should show the outgoing changes in the project.
  Commit the changes from the synchronize pane.</li>
  <li>Click Finish</li>
</ol>

<h3>Scenario 2: New location using different name</h3>
<p>Perform the following steps:</p>
<ol>
  <li>Create a new project</li>
  <li>Select Team>Share and select CVS (if there is more than one 
  repository provider available).</li>
  <li>Select to create a new repository and click Next</li>
  <li>Enter the repository information for a new repository and click Next</li>
  <li>Enter a single segment module name that does not exist in the repository and click Next.</li>
  <li>After a time, the last page should show the outgoing changes in the project.
  Commit the changes from the synchronize pane.</li>
  <li>Click Finish</li>
</ol>
</body></html>