<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/06/01 15:23:56 $</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>