|  | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> | 
|  | <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> | 
|  | <head> | 
|  | <meta content="application/xhtml+xml; charset=utf-8" | 
|  | http-equiv="content-type" /> | 
|  | <meta content="haran" name="author" /> | 
|  | <meta content="Windows Notepad" name="generator" /> | 
|  | <link type="text/css" href="http://dev.eclipse.org/default_style.css" | 
|  | rel="stylesheet" /> | 
|  | <link title="Grey boxes stylesheet" | 
|  | href="http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-vcm-home/layout.css" | 
|  | type="text/css" rel="stylesheet" /> | 
|  | <link | 
|  | href="http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-vcm-home/colors.css" | 
|  | type="text/css" rel="stylesheet" /> | 
|  | <title>Eclipse Platform - CVS FAQ</title> | 
|  | </head> | 
|  | <body> | 
|  | <p>Back to <a href="../archivedReleases.php">Archived Releases</a></p> | 
|  | <table width="100%" cellpadding="2" cellspacing="5" border="0"> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td width="72%" align="left"> <font class="indextop"> CVS</font><br /> | 
|  | <font class="indexsub">platform cvs support</font></td> | 
|  | <td width="28%"><img width="120" height="86" | 
|  | src="http://dev.eclipse.org/images/Idea.jpg" /></td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table> | 
|  | <h1>CVS Eclipse Plug-in FAQ</h1> | 
|  | <p>Last Modified: $Date: 2006/06/09 18:53:05 $</p> | 
|  | <ul> | 
|  | <li><b><a href="#gettingStarted">Getting started</a></b> | 
|  | <ol> | 
|  | <li><a href="#gettingStarted_1">How do I get a project into my | 
|  | workspace from CVS?</a></li> | 
|  | <li><a href="#gettingStarted_2">How do I put a project into CVS | 
|  | from my workspace?</a></li> | 
|  | <li><a href="#gettingStarted_3">I already have a project checked | 
|  | out from CVS with the command-line tool. How do I use it in Eclipse | 
|  | without having to check out the whole project again?</a></li> | 
|  | </ol> | 
|  | </li> | 
|  | <li><b><a href="#browsing">Browsing the Repository</a></b> | 
|  | <ol> | 
|  | <li><a href="#browsing_1">Why don't my branches and versions show | 
|  | up when I am browsing?</a></li> | 
|  | <li><a href="#browsing_2">Why do some modules defined in | 
|  | CVSROOT/modules appear empty in the CVS Repositories view?</a></li> | 
|  | <li><a href="#browsing_3">When I expand HEAD in the CVS | 
|  | Repositories View, it is always empty even though I know the repository | 
|  | has contents. Whats wrong?</a></li> | 
|  | </ol> | 
|  | </li> | 
|  | <li><b><a href="#server">Server Issues</a></b> | 
|  | <ol> | 
|  | <li><a href="#server_1">What server versions of CVS are supported | 
|  | by Eclipse?</a></li> | 
|  | <li><a href="#server_1a">Why doesn't Eclipse 2.1.x work with CVS | 
|  | server versions 1.11.7 and beyond?</a></li> | 
|  | <li><a href="#server_cvsnt">Why aren't older (pre 2.0.58d) CVSNT versions supported?</a></li> | 
|  | <li><a href="#server_2">Where can I get CVS for UNIX or Windows?</a></li> | 
|  | <li><a href="#server_3">Where can I find documentation on CVS?</a></li> | 
|  | <li><a href="#server_6">When I perform a Replace With or Update | 
|  | operation, Eclipse tells me that option -C is not supported. What's | 
|  | wrong?</a></li> | 
|  | <li><a href="#server_7">I performed a Replace With or Override | 
|  | and Update and one of the files involved ended up with strange | 
|  | characters in it. Why?</a></li> | 
|  | <li><a href="#server_8">I got a "received broken pipe signal" | 
|  | error. What does it mean?</a></li> | 
|  | <li><a href="#server_9">How do I use a local connection with | 
|  | Eclipse?</a></li> | 
|  | <li><a href="#server_10">With CVSNT, why do I get the error: "Error | 
|  | fetching file revisions"?</a></li> | 
|  | <li><a href="#server_11">Why can't I get Eclipse to work with | 
|  | CVSNT and mapped network drives?</a></li> | 
|  | <li><a href="#server_12">Using CVSNT, Why do I get the error "cvs | 
|  | [server aborted]: cannot find .: No such file or directory"?</a></li> | 
|  | <li><a href="#server_13">Why do I get the error "Resource <name> | 
|  | is not a child of folder <folder>"?</a></li> | 
|  | <li><a href="#server_14">Why can't I set the keyword substitution mode for CVSNT using Eclipse?</a></li> | 
|  | </ol> | 
|  | </li> | 
|  | <li><b><a href="#ssh">Using SSH with CVS</a></b> | 
|  | <ol> | 
|  | <li><a href="#ssh_1">How do I use SSH to communicate with the | 
|  | server?</a></li> | 
|  | <li><a href="#ssh_2">What is the difference between ext and | 
|  | extssh?</a></li> | 
|  | <li><a href="#ssh_jcraft">My SSH server only support SSH2 protocol and | 
|  | I'm using Eclipse 2.1.x</a></li> | 
|  | <li><a href="#ssh_3">How do I set up public-key authentication for use with | 
|  | an external SSH client?</a></li> | 
|  | <li><a href="#ssh_4">When I try to connect using SSH, it tells me | 
|  | "Could not chdir to home directory /home/user/myname". What did I do | 
|  | wrong?</a></li> | 
|  | <li><a href="#ssh_5">I got an 'Unknown response' while trying to | 
|  | perform CVS browsing. What went wrong?</a></li> | 
|  | <li><a href="#ssh_6">I can't get keys generated using Putty to work with Eclipse</a></li> | 
|  | <li><a href="#ssh_7">Why do CVS extssh connections fail on Fedora Core 4</a></li> | 
|  | <li><a href="#ssh_8">Why does CVS extssh prompt for my password even when it is saved?</a></li> | 
|  | </ol> | 
|  | </li> | 
|  | <li><b><a href="#10">Upgrading from Eclipse 1.0</a></b> | 
|  | <ol> | 
|  | <li><a href="#10_1">Is there anything I should do before | 
|  | upgrading from Eclipse 1.0 to 2.0?</a></li> | 
|  | <li><a href="#10_2">I'm using a workspace from 1.0. Why does the | 
|  | Team menu only contain "Share Project"?</a></li> | 
|  | <li><a href="#10_3">Eclipse 1.0 created all my files as binary in | 
|  | the repository. How do I fix this?</a></li> | 
|  | <li><a href="#10_4">Is a Branch the same as a Stream? What about | 
|  | other 1.0 terminology?</a></li> | 
|  | <li><a href="#10_5">I get a message saying the .vcm_meta file is | 
|  | obsolete and should be deleted. Should I really delete it?</a></li> | 
|  | </ol> | 
|  | </li> | 
|  | <li><b><a href="#java">Using Eclipse and CVS for Java development</a></b> | 
|  | <ol> | 
|  | <li><a href="#java_1">When I check out a Java project from the | 
|  | repository, how do I make Eclipse aware it is a Java project?</a></li> | 
|  | <li><a href="#java_2">What is the .classpath file? Should I | 
|  | release it to the repository?</a></li> | 
|  | <li><a href="#java_3">In my CVS repository, there is a source | 
|  | directory in the repository root. How can I use this with Eclipse?</a></li> | 
|  | <li><a href="#java_4">How do I check out a module definition as a | 
|  | Java project</a></li> | 
|  | <li><a href="#java_5">Why does the bin directory keep appearing | 
|  | in the Synchronize view?</a></li> | 
|  | <li><a href="#java_5a">I ignored the bin directory but it appears | 
|  | to be shared anyway. Why?</a></li> | 
|  | <li><a href="#java_6">How do I use CVS keywords in Java templates?</a></li> | 
|  | <li><a href="#java_7">I'm working with a virtual module defined | 
|  | in the CVSROOT/modules file. How do I commit the .project and/or | 
|  | .classpath file?</a></li> | 
|  | </ol> | 
|  | </li> | 
|  | <li><b><a href="#commandLine">Compatibility Between CVS command-line | 
|  | client and Eclipse</a></b> | 
|  | <ol> | 
|  | <li><a href="#commandLine_1">Does Eclipse use [WinCVS|CVS | 
|  | command-line client] to talk to the server?</a></li> | 
|  | <li><a href="#commandLine_2">The command-line CVS client stores | 
|  | information in CVS folders. Does Eclipse do the same thing? If so, | 
|  | where are the folders?</a></li> | 
|  | <li><a href="#commandLine_3">Is Eclipse compatible with the | 
|  | command-line CVS client?</a></li> | 
|  | <li><a href="#commandLine_4">Can I import a project into Eclipse | 
|  | that was checked out using the command line?</a></li> | 
|  | <li><a href="#commandLine_5">Why does Eclipse corrupt my *.jar, | 
|  | *.zip, etc. files?</a></li> | 
|  | <li><a href="#commandLine_6">When I use the command-line CVS on | 
|  | my project, why do the CVS folders sometimes appear in the Navigator | 
|  | View?</a></li> | 
|  | <li><a href="#commandLine_7">When I use the command-line CVS on | 
|  | my project, why go I get "resource out of sync" errors?</a></li> | 
|  | </ol> | 
|  | </li> | 
|  | <li><b><a href="#patches">Working with Patches</a></b> | 
|  | <ol> | 
|  | <li><a href="#patches_1">How do I send someone a patch?</a></li> | 
|  | <li><a href="#patches_2">How do I apply a patch that someone sent | 
|  | me?</a></li> | 
|  | </ol> | 
|  | </li> | 
|  | <li><b><a href="#linux">Linux Issues</a></b> | 
|  | <ol> | 
|  | <li><a href="#linux_0">On linux, using IBM JRE 1.3.0, I get a | 
|  | timeout when connecting to a repository. What's wrong?</a></li> | 
|  | <li><a href="#linux_1">On Red Hat 8, Eclipse fails to make a | 
|  | checkout but it works with other clients. Why?</a></li> | 
|  | </ol> | 
|  | </li> | 
|  | <li><b><a href="#windows">Windows Issues</a></b> | 
|  | <ol> | 
|  | <li><a href="#windows_0">Eclipse crashed Windows 2000 (blue | 
|  | screen) when performing a CVS operation. What happened?</a></li> | 
|  | <li><a href="#windows_2">Eclipse always times out when performing | 
|  | a Synchronize on one or two particular machines?</a></li> | 
|  | <li><a href="#windows_3">Why do CVS operations slow down when I | 
|  | am connected to my network/dial-up?</a></li> | 
|  | <li><a href="#windows_4">Why do all my files show as outgoing | 
|  | changes?</a></li> | 
|  | </ol> | 
|  | </li> | 
|  | <li><b><a href="#misc">Miscellaneous</a></b> | 
|  | <ol> | 
|  | <li><a href="#misc_0">Is there any equivalent to CVS_CLIENT_LOG | 
|  | is Eclipse?</a></li> | 
|  | <li><a href="#misc_1">What is the .project file, and should I | 
|  | release it to CVS?</a></li> | 
|  | <li><a href="#misc_2">I don't have update access to the CVS | 
|  | repository. Can I still check out a project with Eclipse?</a></li> | 
|  | <li><a href="#misc_3">What does "Terminated with fatal signal 10" | 
|  | mean?</a></li> | 
|  | <li><a href="#misc_4">I copied some folders from one CVS project | 
|  | to another and the old CVS information remained. What happened?</a></li> | 
|  | <li><a href="#misc_8">I used Team > Share Project to connect a | 
|  | local project to an existing project and it takes forwever. Why?</a></li> | 
|  | <li><a href="#misc_9">Does Eclipse support Watch/Edit?</a></li> | 
|  | <li><a href="#misc_12">Why do I get a "Pre-commit failed" error | 
|  | with no detailed error message?</a></li> | 
|  | <li><a href="#misc_13">Why can"t I get my pserver CVS proxy to work?</a></li> | 
|  | </ol> | 
|  | </li> | 
|  | </ul> | 
|  | <!-- End of table of contents --> | 
|  | <!-- Getting Started  --> | 
|  | <h1>Getting Started</h1> | 
|  | <ol> | 
|  | <li><b><a name="gettingStarted_1">How do I get a project into my | 
|  | workspace from CVS?</a></b> | 
|  | <p>       </p> | 
|  | <ol> | 
|  | <li>Window->Show View->Other. Select CVS->CVS | 
|  | Repositories.</li> | 
|  | <li>Context Menu->New->Repository Location...</li> | 
|  | <li>Fill in the location information identifying your repository | 
|  | and click Finish.</li> | 
|  | <li>Expand the newly-created repository location.</li> | 
|  | <li>Expand HEAD.</li> | 
|  | <li>Find the module you are interested in.</li> | 
|  | <li>Context Menu->Check Out As Project.</li> | 
|  | </ol> | 
|  | <br /> | 
|  | The project now exists in your workspace. </li> | 
|  | <p>       <br /> | 
|  | </p> | 
|  | <li><b><a name="gettingStarted_2">How do I put a project into CVS | 
|  | from my workspace?</a></b> | 
|  | <p>       </p> | 
|  | <ol> | 
|  | <li>Select the project in the Navigator or other view.</li> | 
|  | <li>Context Menu->Team->Share Project...</li> | 
|  | <li>Fill in the location information identifying your repository | 
|  | and click Finish.</li> | 
|  | <li>The Synchronize view opens, showing all your outgoing changes.</li> | 
|  | <li>Select the project in the Synchronize view.</li> | 
|  | <li>Context Menu->Commit.</li> | 
|  | <li>Answer yes when prompted to add new files to version control.</li> | 
|  | <li>Supply a release comment if you like.</li> | 
|  | </ol> | 
|  | <br /> | 
|  | The project now exists in the repository. </li> | 
|  | <p>       <br /> | 
|  | </p> | 
|  | <li><b><a name="gettingStarted_3">I already have a project checked | 
|  | out from CVS with the command-line tool. How do I use it in Eclipse | 
|  | without having to check out the whole project again?</a></b> | 
|  | <p>       </p> | 
|  | <ol> | 
|  | <li>Create a project in the workspace.</li> | 
|  | <li>File->Import, select File System, locate your files, click | 
|  | Finish.</li> | 
|  | <li>Select the project in the Navigator or other view.</li> | 
|  | <li>Context Menu->Team->Share Project...</li> | 
|  | <li>The wizard should tell you that it found all the necessary | 
|  | information. Click Finish.</li> | 
|  | </ol> | 
|  | <br /> | 
|  | Eclipse has now shared the project with the CVS repository. </li> | 
|  | <p>       </p> | 
|  | </ol> | 
|  | <br /> | 
|  | <!-- Browsing the Repository  --> | 
|  | <h1>Browsing the Repository</h1> | 
|  | <ol> | 
|  | <li><b><a name="browsing_1">Why don't my branches and versions show | 
|  | up when I am browsing?</a></b> | 
|  | <p>       </p> | 
|  | <p>When you are browsing in the CVS Repositories view, you may | 
|  | expect to see branch and version tags which you have previously | 
|  | created. In CVS, such tags are stored on individual files rather than | 
|  | on projects or folders. Rather than scan every file in the repository, | 
|  | Eclipse only scans one well-known file, .project, which should exist in | 
|  | every Eclipse project. It is possible that you have other interesting | 
|  | tags that do not appear on .project but which you would like to show up | 
|  | in the CVS Repositories view.</p> | 
|  | <p>       </p> | 
|  | <p>To make these tags appear, do the following:</p> | 
|  | <ol> | 
|  | <li>Open the CVS Repositories view.</li> | 
|  | <li>Expand HEAD and select the project for which you want to | 
|  | configure tags.</li> | 
|  | <li>Context Menu->Configure Branches and Versions...</li> | 
|  | <li>In the "Browse files for tags" table, select one or more | 
|  | files that contain tags you would like to see.</li> | 
|  | <li>Click "Add Selected Tags".</li> | 
|  | <li>Click "OK".</li> | 
|  | </ol> | 
|  | <br /> | 
|  | The CVS Repositories view will now display the chosen tags under the | 
|  | Branches and Versions categories. In addition, these tags will show up | 
|  | in other tag-related operations, such as "Replace With->Branch or | 
|  | Version...". </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="browsing_2">Why do some modules defined in | 
|  | CVSROOT/modules appear empty in the CVS Repositories view?</a></b> | 
|  | <p>       </p> | 
|  | <p>Some modules are not expandable because their definition is | 
|  | complex and difficult to parse on the client. These modules can still | 
|  | be checked out properly using the "Check Out Module" menu command from | 
|  | the module's context menu. </p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="browsing_3">When I expand HEAD in the CVS | 
|  | Repositories View, it is always empty even though I know the repository | 
|  | has contents. Whats wrong?</a></b> | 
|  | <p>       </p> | 
|  | <p>If you also see messages from the server like "-f server: ...", | 
|  | this indicates that your CVS server has not been configured properly. | 
|  | Here is the line as it should appear in the "/etc/inetd.conf" file | 
|  | (example from AIX but the problem has also been seen on Solaris):</p> | 
|  | <ul> | 
|  | <li>cvspserver stream tcp nowait root /usr/bin/cvs cvs -f | 
|  | --allow-root=/usr/cvsroot pserver</li> | 
|  | </ul> | 
|  | <p>The key is the 2nd copy of "cvs". The online cvs book at <a | 
|  | href="http://cvsbook.red-bean.com/cvsbook.html#The_pserver_access_method_is_not_working"> | 
|  | http://cvsbook.red-bean.com/cvsbook.html</a> | 
|  | has it right (although I thought it was a typo so never tried it). Look | 
|  | for "The pserver access method is not working" section. Part of the | 
|  | reason I got this wrong is that the linux xinetd configuration | 
|  | does not duplicate the name of the program. At one point I | 
|  | just copied the fields from the linux config into the fields in the AIX | 
|  | inetd.conf file. Now that I know what to look for, the other entries in | 
|  | the inetd.conf file | 
|  | have the program name duplicated.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | </ol> | 
|  | <br /> | 
|  | <!-- Server Issues  --> | 
|  | <h1>Server Issues</h1> | 
|  | <ol> | 
|  |  | 
|  | <li><b><a name="server_1">What server versions of CVS are supported by Eclipse?</a></b> | 
|  |  | 
|  | <p>In 3.0, Eclipse supports CVS version 1.11.1p1 or higher, running | 
|  | on a Linux or UNIX server and CVSNT 2.0.58d or later, when properly | 
|  | <a href="../html-cvs/cvs-compatibility.html">configured</a>. Eclipse 2.1.2 and before does not work with | 
|  | CVS versions greater than 1.11.6 (see <a href="#server_1a">next point</a>). | 
|  | CVSNT versions prior to 2.0.58d are not supported but some versions have been reported to | 
|  | work with few problems. There have also been some problems reported with HPUX and Solaris version | 
|  | (see <a href="#browsing_3">above</a>).</p> | 
|  | <p>There are also cases where newer server versions are required for some | 
|  | functionality. For instance, incoming change sets in the synchronize view | 
|  | require CVS version 1.11.5 or beyond to work properly | 
|  | (see bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=81960">81960</a>)</p> | 
|  | </li> | 
|  |  | 
|  | <li><b><a name="server_1a">Why doesn't Eclipse 2.1.x work with CVS server versions 1.11.7 and beyond?</a></b> | 
|  | <p>Most of the interesting Eclipse CVS functionality relies on the | 
|  | format of the messages and the change in format made in 1.11.7 breaks | 
|  | the parsing in Eclipse versions prior to 2.1.3. Most of the | 
|  | incompatibilities for 1.11.x were addressed in 2.1.3. See bugs | 
|  | <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=46655">46655</a> | 
|  | and <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=49056">49056</a> | 
|  | for patches and workarounds for previous versions of Eclipse or | 
|  | remaining incompatibilities. As for 1.12.x releases of CVS, Eclipse | 
|  | 2.1.x is not compatible with this server version. Eclipse 3.0 is | 
|  | compatible with 1.12.7 but future releases of CVS may cause similar | 
|  | breakages. In such cases, Team>Update and Team>Commit should | 
|  | still work but the more advanced work flows (e.g. synchronizing) may not | 
|  | be reliable.</p> | 
|  | </li> | 
|  |  | 
|  | <li><b><a name="server_cvsnt">Why aren't older (pre 2.0.58d) CVSNT versions supported?</a></b> | 
|  | <p>The reason older CVSNT versions aren't supported is because traditionally its | 
|  | development effort had been smaller and has lagged behind that of CVS | 
|  | Linux, thus its quality tends to be of issue. That has changed as of version 2.0.58d | 
|  | which is now supported (when properly | 
|  | <a href="../html-cvs/cvs-compatibility.html">configured</a>) on Eclipse 3.0 and beyond.</p> | 
|  | </li> | 
|  |  | 
|  | <li><b><a name="server_2">Where can I get CVS for UNIX or Windows?</a></b> | 
|  | <p>CVS for UNIX can be downloaded by going to | 
|  | <a href="http://www.cvshome.org">http://www.cvshome.org</a>. CVSNT can be | 
|  | downloaded by going to <a href="http://www.cvsnt.org">http://www.cvsnt.org</a>.</p> | 
|  | </li> | 
|  |  | 
|  | <li><b><a name="server_3">Where can I find documentation on CVS?</a></b> | 
|  | <p>The CVS manual can be found by going to <a href="http://www.cvshome.org">http://www.cvshome.org</a>.</p> | 
|  | </li> | 
|  |  | 
|  | <li><b><a name="server_6">When I perform a Replace With or Update | 
|  | operation, Eclipse tells me that option -C is not supported. What's | 
|  | wrong?</a></b> | 
|  | <p>This error indicates that your server version is CVS 1.10 or | 
|  | before. The -C option was introduced in version 1.11. See <a | 
|  | href="#server_1">above</a> for supported CVS versions.</p> | 
|  | </li> | 
|  |  | 
|  | <li><b><a name="server_7">I performed a Replace With or Override and | 
|  | Update and one of the files involved ended up with strange characters | 
|  | in it. Why?</a></b> | 
|  | <p>This error indicates that your server version is CVS 1.11 which | 
|  | has a bug when replacing a locally dirty file. See <a href="#server_1">above</a> | 
|  | for supported CVS versions.</p> | 
|  | </li> | 
|  |  | 
|  | <li><b><a name="server_8">I got a "received broken pipe signal" | 
|  | error. What does it mean?</a></b> | 
|  | <p>Eclipse sometime performs multiple commands within a single | 
|  | connection to the server. This may cause problems with CVS server that | 
|  | are running server scripts in reponse to certain commands.</p> | 
|  | </li> | 
|  |  | 
|  | <li><b><a name="server_9">How do I use a local connection with | 
|  | Eclipse?</a></b> | 
|  | <p>Eclipse does not support the use of the local connection method | 
|  | as this requires a CVS client that also includes the CVS server code in | 
|  | it. Command line cvs uses the same executable for the client and the | 
|  | server whereas Eclipse is a client only. Since the repository is on the | 
|  | same machine as the client, you should be able to use pserver.</p> | 
|  | </li> | 
|  |  | 
|  | <li><b><a name="server_10">With CVSNT, why do I get the error: "Error | 
|  | fetching file revisions"?</a></b> | 
|  | <p>This problem has several causes. One is the use of a backslash (\) in the | 
|  | repository path instead of a slash (/). Another can be a mismatch in the | 
|  | case of the letters in the repository path. See bug | 
|  | <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=56635">56635</a> for more details.</p> | 
|  | </li> | 
|  |  | 
|  | <li><b><a name="server_11">Why can't I get Eclipse to work with CVSNT | 
|  | and mapped network drives?</a></b> | 
|  | <p>The problem is that CVSNT (as of 1.11.1.3) only supports using | 
|  | the local connection method with network drives and Eclipse does not | 
|  | support this connection method (see <a href="#server_9">above</a>). </p> | 
|  | </li> | 
|  |  | 
|  | <li><b><a name="server_12">Using CVSNT, Why do I get the error "cvs | 
|  | [server aborted]: cannot find .: No such file or directory"?</a></b> | 
|  | <p>I think the problem is that of user rights on the machine CVSNT | 
|  | is running on. You might try one or more of the following options: </p> | 
|  | <ul> | 
|  | <li>create a group having full access rights to the CVSNT | 
|  | repository directory structure plus the temp folder CVSNT is using. | 
|  | This is easiest if you specify a separate CVSNT temp directory such as | 
|  | "c:\cvstemp" using the Advanced tab in the<br /> | 
|  | CVSNT control panel. (The default temporary directories in | 
|  | "C:\WINNT\TEMP" and "C:\Documents and Settings" have access | 
|  | restrictions under Win2000 and WinXP).</li> | 
|  | <li>turn off impersonation in CVSNT</li> | 
|  | <li>add all CVS users to PowerUsers on the machine CVSNT is | 
|  | running on</li> | 
|  | </ul> | 
|  | <p> </p> | 
|  | </li> | 
|  |  | 
|  | <li><b><a name="server_13">Why do I get the error "Resource <name> is not a child of folder <folder>"?</a></b> | 
|  | <p>CVSNT has a separate option called <em>Emulate "-n checkout" bug</em> that must be enabled for Eclipse | 
|  | to work properly. This is because the "bug" in question is the behavior of a 1.11.x server which | 
|  | Eclipse requires. | 
|  | </p> | 
|  | </li> | 
|  |  | 
|  | <li><b><a name="server_14">Why can't I set the keyword substitution mode for CVSNT using Eclipse?</a></b> | 
|  | <p>CVSNT has a non-standard way of dealing with keyword substitution so you will | 
|  | need to use a CVSNT specific client to modify the keyword substitution mode. | 
|  | </p> | 
|  | </li> | 
|  |  | 
|  | </ol> | 
|  | <br /> | 
|  | <!-- SSH  --> | 
|  | <h1>Using SSH with CVS</h1> | 
|  | <ol> | 
|  | <li><b><a name="ssh_1">How do I use SSH to communicate with the server?</a></b> | 
|  | <p>The pserver protocol sends passwords over the network in plaintext. Many | 
|  | people prefer to establish a secure connection using SSH. Eclipse supports | 
|  | two methods of connecting to CVS repositories using SSH. </p> | 
|  | <p>To use the Eclipse's built-in SSH support, simply specify "extssh" as the | 
|  | connection method type when creating the repository connection.</p> | 
|  | <p>To use SSH support from an external tool, you must: </p> | 
|  | <ol> | 
|  | <li>Specify "ext" as the connection method type when creating the repository | 
|  | connection.</li> | 
|  | <li>Window->Preferences->Team->CVS->Ext Connection Method. On | 
|  | this page, specify the name and location of your external ssh client. | 
|  | (For example, "<code>C:\plink.exe</code>" or "<code>/usr/local/bin/ssh</code>"). | 
|  | Also specify the name and location of the CVS binary <b>on the server</b>. | 
|  | The default value is often correct.</li> | 
|  | <li>Ensure that you can log on to the server using the external SSH tool | 
|  | <b>without specifying a password</b>.</li> | 
|  | </ol> | 
|  | <p><b>Note:</b> In Eclipse 2.1, you can also specify (on the Ext Connection | 
|  | Method preference page) the parameters to be passed to the SSH client, including | 
|  | the password.</p> | 
|  | </li> | 
|  | <li><b><a name="ssh_2">What is the difference between ext and extssh?</a></b> | 
|  | <p>The extssh connection method uses a built-in SSH client. The ext connection | 
|  | method allows you to specify an external SSH client to use. For extssh to | 
|  | work with Eclipse 2.1.x and before, the server must be running an SSH server | 
|  | with SSH1 protocol compatibility. If extssh does not work, it is possible | 
|  | that the server is running only the SSH2 protocol. If this is the case, | 
|  | you must configure the ext connection method with an external SSH client. | 
|  | In Eclipse 3.0 and beyond, extssh does support SSH2. </p> | 
|  | </li> | 
|  | <li><a name="ssh_jcraft"></a><strong>My SSH server only support SSH2 protocol | 
|  | and I'm using Eclipse 2.1.x</strong> <br /> | 
|  | <br /> | 
|  | Eclipse comes with a built-in SSH connection method called 'extssh'. Prior | 
|  | to Eclipse 3.0, this method only supported SSH1 servers. If your server is | 
|  | running SSH2 and you want to use Eclipse 2.1.x to connect to that server you | 
|  | have two options: <br /> | 
|  | <ol> | 
|  | <li>use a command line SSH client that supports SSH2 with the 'ext' connection | 
|  | method <br /> | 
|  | </li> | 
|  | <li>download a plugin created by <a | 
|  | href="http://www.jcraft.com/eclipse-cvsssh2/">JCraft</a> that provides a SSH2 | 
|  | connection method. <br /> | 
|  | </li> | 
|  | </ol> | 
|  | To use the 'ext' connection method, download and install an SSH command line | 
|  | client for your operating environment. In the Team > CVS > Ext Connection | 
|  | Method preference page, configure the location of the SSH executable and how | 
|  | the executable is to be called. For the ext method to work the CVS client | 
|  | on your server must support the server mode. You can verify this by running | 
|  | cvs --help-commands and ensure that the server command is supported.<br /> | 
|  |   </li> | 
|  | <li><b><a name="ssh_3">How do I set up public-key authentication for an external | 
|  | SSH client?</a></b> | 
|  | <p>The steps for setting up public-key authentication vary depending on your | 
|  | SSH client. However, they all follow this set of common steps: </p> | 
|  | <ol> | 
|  | <li>Use the client program (or a utility that came with it) to generate | 
|  | a public/private key pair. This program might be called ssh-keygen or | 
|  | puttygen.exe.</li> | 
|  | <li>Copy the public key to the server. This is often done by pasting the | 
|  | public key into the file <code>/home/user/.ssh/authorized_keys</code>.</li> | 
|  | </ol> | 
|  | </li> | 
|  | <br /> | 
|  | <li><b><a name="ssh_4">When I try to connect using SSH, it tells me "Could not | 
|  | chdir to home directory /home/user/myname". What did I do wrong?</a></b> | 
|  | <p>This often happens when using SourceForge projects for the first time, | 
|  | but may occur on other servers as well. You must manually log in to the | 
|  | server, using an interactive SSH session, in order to create your home directory | 
|  | for the first time. After this, you will be able to log in successfully. | 
|  | </p> | 
|  | <p>Use your SSH client to connect to the server (e.g. cvs.sourceforge.net) | 
|  | and log in with your username and password. Your home directory will be | 
|  | created for you.</p> | 
|  | </li> | 
|  | <li><b><a name="ssh_5">I got an 'Unknown response' while trying to perform CVS | 
|  | browsing. What went wrong?</a></b> | 
|  | <p>A problem has been reported that involves the Cygwin SSH client (see bug | 
|  | <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21180">21180</a>). | 
|  | Try using another SSH client such as Putty or <a | 
|  | href="http://www.networksimplicity.com/openssh/">OpenSSH</a>. </p> | 
|  | </li> | 
|  | <li><a name="ssh_6"><strong>I can't get keys generated using Putty to work with | 
|  | Eclipse</strong></a> | 
|  | <p>Putty's private key is encrypted by AES, but JCE (Java Crtptgraphy Extension) | 
|  | included in J2SE 1.4.x does not support AES. So, at present time, there is | 
|  | no plan to support it. Of course, JSch (the SSH2 client used in Eclipse) may | 
|  | support Putty's key by using the latest J2SE in the near future, but Eclipse | 
|  | 3.0/3.1 will not be able to use it because they must run on J2SE 1.4.0. This | 
|  | is explained more in bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=84281">https://bugs.eclipse.org/bugs/show_bug.cgi?id=84281</a>.</p> | 
|  | </li> | 
|  | <li><a name="ssh_7"><strong>Why do CVS extssh connections fail on Fedora Core 4</strong></a> | 
|  | <p> | 
|  | There is an issue with Sun's JDK 1.4.2 and Fedora Core 4 that causes extssh | 
|  | connections to fail with the message: | 
|  | <pre> | 
|  | CVS Communication error: | 
|  | org.eclipse.team.internal.ccvs.ssh2.CVSSSH2ServerConnection$SSH2IOException: | 
|  | Invalid argument or cannot assign requested address | 
|  | </pre> | 
|  | The issue seems to be related to both IPv6 and IPv4 being available in FC4. The | 
|  | solution is to add | 
|  | <pre> | 
|  | -Djava.net.preferIPv4Stack=true | 
|  | </pre> | 
|  | with the -vmargs option when eclipse is started. | 
|  | <p></p> | 
|  | </li> | 
|  | <li><strong><a name="ssh_8">Why does CVS extssh prompt for my password even when it is saved?</a></strong> | 
|  | <p>This problem has been seen on servers that have a problems in a particular authentication | 
|  | method. This will cause extssh to believe that there has been an authentication failure which | 
|  | trigger a password prompt. See bug <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=119008">119008</a> | 
|  | for details. | 
|  | </p> | 
|  | </li> | 
|  | </ol> | 
|  | <br /> | 
|  | <!-- Upgrading from Eclipse 1.0 --> | 
|  | <h1>Upgrading from Eclipse 1.0</h1> | 
|  | <ol> | 
|  | <li><b><a name="10_1">Is there anything I should do before upgrading | 
|  | from Eclipse 1.0 to 2.0?</a></b> | 
|  | <p>       </p> | 
|  | <p><b>IMPORTANT:</b> Before upgrading from Eclipse 1.0 to 2.0, make | 
|  | sure you release all your changes to the repository using Eclipse 1.0. | 
|  | Although it is possible to submit the changes using Eclipse 2.0 after | 
|  | you upgrade, to do so is not straight forward due to a change in how | 
|  | the synchronization information for each project is stored.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="10_2">I'm using a workspace from 1.0. Why does the | 
|  | Team menu only contain "Share Project"?</a></b> | 
|  | <p>       </p> | 
|  | <p>Team support changed drastically between Eclipse 1.0 and 2.0. As | 
|  | such, the method of sharing projects with the repository changed as | 
|  | well. We have tried to make it relatively easy for you to migrate, | 
|  | however. You will notice that your previously shared projects only have | 
|  | "Share Project" in the Team menu. If you select that option, a wizard | 
|  | will guide you through the migration process. When you are finished, | 
|  | your project will be shared and the Synchronize view will open. You | 
|  | will see conflicting changes on every file - this is due to changes in | 
|  | the way sync information is stored between 1.0 and 2.0. If you do not | 
|  | have any outgoing changes (which you shouldn't have if you committed | 
|  | all your outgoing changes before upgrading as recommended above), then | 
|  | you can simply select the project in the Synchronize view and select | 
|  | "Override and Update" which will load the current contents from the | 
|  | server. If you do have outgoing changes, you can pull down the triangle | 
|  | menu in the Synchronize view and select "Compare File Contents". After | 
|  | some work, the Synchronize view will show you only the files which are | 
|  | actually different. You can then use the Synchronize view to resolve | 
|  | these conflicts.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="10_3">Eclipse 1.0 created all my files as binary in | 
|  | the repository. How do I fix this?</a></b> | 
|  | <p>       </p> | 
|  | <p>Any file checked into a CVS repository from Eclipse 1.0 was | 
|  | marked as binary. This means that end-of-line conversions will not | 
|  | occur on checkout, and some features of CVS (such as auto-mergeable | 
|  | conflicts) will not apply to these files. As such, it may be desirable | 
|  | to change some of these files from binary to text. To change the file | 
|  | types, do the following:</p> | 
|  | <ol> | 
|  | <li>Make sure that all members of your team have saved and | 
|  | committed any changes to the affected files.</li> | 
|  | <li>Select the resources you wish to change in the Navigator or | 
|  | other view.</li> | 
|  | <li>Context Menu->Team->Set Keyword Substitution...</li> | 
|  | <li>Select "Automatic" to use the recommended detection. Click | 
|  | Next.</li> | 
|  | <li>Select the checkbox labelled "Include files that are already | 
|  | in the repository". Click Next.</li> | 
|  | <li>Click Finish. All affected files will immediately be modified | 
|  | in the repository.</li> | 
|  | <li>All other team members must now check out fresh copies of all | 
|  | affected files.</li> | 
|  | </ol> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="10_4">Is a Branch the same as a Stream? What about | 
|  | other 1.0 terminology?</a></b> | 
|  | <p>       </p> | 
|  | <p>In an effort to move away from generic terminology that applies | 
|  | to all repository providers, and toward provider-specific terminologies | 
|  | and workflows, many terms, menu items and labels have changed in 2.0. | 
|  | Here is a brief list of some of the changes. For more detailed | 
|  | information, please see the Eclise CVS documentation.</p> | 
|  | <table border="1"> | 
|  | <tbody> | 
|  | <tr> | 
|  | <td><b>Eclipse 1.0</b></td> | 
|  | <td><b>Eclipse 2.0</b></td> | 
|  | <td><b>Comments</b></td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td>Stream</td> | 
|  | <td>Branch</td> | 
|  | <td>The CVS terminology "Branch" replaces "Stream"</td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td>Catchup</td> | 
|  | <td>Update</td> | 
|  | <td>"Update" refers to the standard CVS method of retrieving | 
|  | remote contents. For more details on Update, see the Eclipse CVS | 
|  | documentation.</td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td>Release</td> | 
|  | <td>Commit</td> | 
|  | <td>These terms are equivalent.</td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td>Add to Workspace</td> | 
|  | <td>Check Out as Project</td> | 
|  | <td>The CVS terminology "Check Out" replaces "Add to | 
|  | Workspace".</td> | 
|  | </tr> | 
|  | <tr> | 
|  | <td><i>None</i></td> | 
|  | <td>Tag</td> | 
|  | <td>In CVS, a Tag refers to either a Branch Tag or a Version | 
|  | Tag. Branches and versions together are referred to as Tags.</td> | 
|  | </tr> | 
|  | </tbody> | 
|  | </table> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="10_5">I get a message saying the .vcm_meta file is | 
|  | obsolete and should be deleted. Should I really delete it?</a></b> | 
|  | <p>       </p> | 
|  | <p>In Eclipse 1.0, meta-information about a project was stored in | 
|  | .vcm_meta. In Eclipse 2.0, this mechanism was made more general and the | 
|  | data was moved to the .project file. As such, the .vcm_meta file is now | 
|  | unneeded. The Eclipse CVS client will warn you of this state by placing | 
|  | a warning in the task list. If you still have people on your team who | 
|  | are using Eclipse 1.0 for development with your repository, then you | 
|  | should not delete the .vcm_meta file. If all members of your team are | 
|  | using Eclipse 2.0, then you can safely delete the .vcm_meta file and | 
|  | commit the deletion to the repository.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | </ol> | 
|  | <br /> | 
|  | <!-- Using Eclipse and CVS for Java Development --> | 
|  | <h1>Using Eclipse and CVS for Java Development</h1> | 
|  | <ol> | 
|  | <li><b><a name="java_1">When I check out a Java project from the | 
|  | repository, how do I make Eclipse aware it is a Java project?</a></b> | 
|  | <p>       </p> | 
|  | <p>Eclipse makes use of information in the .project file to | 
|  | determine if a project is a Java project. If the project you have | 
|  | checked out does not have a .project file, Eclipse will not mark it | 
|  | properly. If you use "Checkout As..." instead of "Checkout As Project" | 
|  | in the Repositories view, then you will be given an opportunity to | 
|  | specify Java as the project type and provide Java specific | 
|  | configuration information.</p> | 
|  | <p>       </p> | 
|  | <p>       </p> | 
|  | </li> | 
|  | <li><b><a name="java_2">What is the .classpath file? Should I commit | 
|  | it to the repository?</a></b> | 
|  | <p>       </p> | 
|  | <p>Eclipse's Java development tools create and maintain a special | 
|  | file, .classpath, in the root of each Java project. This file contains | 
|  | information about the project's classpath, including references to | 
|  | other projects, external jars, and the project's own source path. If | 
|  | you are working on a team with other developers that use Eclipse, you | 
|  | probably want to commit this file to the repository so that others can | 
|  | benefit from correct classpath settings. If the other developers on | 
|  | your team do not use Eclipse, you may still want to commit the | 
|  | .classpath file so that your settings are persisted - this should not | 
|  | affect the users that are not using Eclipse.</p> | 
|  | <p>       </p> | 
|  | <p>       </p> | 
|  | </li> | 
|  | <li><b><a name="java_3">In my CVS repository, there is a source | 
|  | directory in the repository root. How can I use this with Eclipse?</a></b> | 
|  | <p>       </p> | 
|  | <p>If the name of the CVS module is part of the package name of | 
|  | Java files, you will encounter problems. For example, if the module you | 
|  | check out is called "test", and it contains a folder called "code" | 
|  | which contains Java files that claim to be in the package "test.code", | 
|  | Eclipse will not be able to compile these Java classes. There are | 
|  | several solutions to this problem:</p> | 
|  | <ol> | 
|  | <li>One solution is to move the top-level package folder ("test" | 
|  | in this case) to be a subfolder of the CVS module. In this case, create | 
|  | a folder called "test" in the project "test", and move "code" into it. | 
|  | Then commit your changes. | 
|  | <p>       </p> | 
|  | </li> | 
|  | <li>Another possible solution is to use modules definitions. | 
|  | Modules can be defined in the CVSROOT/modules file to include root | 
|  | level projects as subfolders of the checked out folder stucture. The | 
|  | steps to get this to work for the above example are: | 
|  | <ol> | 
|  | <li>Add the following two lines to the CVSROOT/modules file<br /> | 
|  | test &test<br /> | 
|  | MyProject &test </li> | 
|  | <li>In the CVS Repositories View, select the modules with the | 
|  | name matching the one defined in the CVSROOT/modules file (Note that in | 
|  | Eclipse 2.0.x, you will need to switch to "Show Modules" mode using the | 
|  | drop down menu in the title bar in order to see the module).</li> | 
|  | <li>Select "MyProject" and choose "Checkout Module" from the | 
|  | popup menu.</li> | 
|  | </ol> | 
|  | See the <a href="http://www.cvshome.org">CVS documentation</a> for | 
|  | more information on defining modules. | 
|  | <p>       </p> | 
|  | </li> | 
|  | <li>If you are using Eclipse 2.1, you can create a new Java | 
|  | Project and then perform a "Checkout Into..." on the CVS Module. This | 
|  | operation allows you to check out a CVS modules into an existing | 
|  | project as a subfolder and configures that target project to be shared | 
|  | with CVS. </li> | 
|  | </ol> | 
|  | <p>Source folders must always begin beneath the project, not above | 
|  | it. See the Eclipse Java Development Tools documentation for more | 
|  | information on source folders.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="java_4">How do I check out a module definition as a | 
|  | Java project?</a></b> | 
|  | <p>       </p> | 
|  | <p>To check out a module that is defined in the CVSROOT/modules | 
|  | file as a Java project, you may have to pre-create the target project | 
|  | as a java project in the workspace before performing the "Check Out | 
|  | Module". </p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="java_5">Why does the bin directory keep appearing in | 
|  | the Synchronize view?</a></b> | 
|  | <p>       </p> | 
|  | <p>JDT marks most of its build output as being derived resources so | 
|  | that CVS and other repository types can easily ignore these resources | 
|  | from version control. However, if you define custom source and build | 
|  | output folders, the newly created build output folder will not be | 
|  | marked as derived. In many cases the root build output folder is named | 
|  | bin. To ignore this folder, select it in the navigator and choose Team | 
|  | > Add to .cvsignore, then commit the .cvsignore file to the | 
|  | repository so that the bin folder will be ignored at all times for that | 
|  | project. </p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="java_5a">I ignored the bin directory but it appears | 
|  | to be shared anyway. Why?</a></b> | 
|  | <p>       </p> | 
|  | <p>If a resources whose name matches a pattern in the .cvsignore | 
|  | also exists in the repository, then this resource is not ignored. For | 
|  | the case of the bin folder, chances are that the bin folder was | 
|  | committed to the repository at some point. The solution is to purge | 
|  | this directory from the repository. </p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="java_6">How do I use CVS keywords in Java templates?</a></b> | 
|  | <p>       </p> | 
|  | <p>Substitute the usual keyword (e.g. $Revision: 1.1 $) with the $ | 
|  | escaped version (e.g. $$Revision: 1.1 $$). </p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="java_7">I'm working with a virtual module defined in | 
|  | the CVSROOT/modules file. How do I commit the .project and/or | 
|  | .classpath file?</a></b> | 
|  | <p>       </p> | 
|  | <p>The easiest way to address this problem is to create a project | 
|  | in the repository whose purpose is to hold the .project and .classpath | 
|  | files for your module. For example, if your module definition is <i>my-module | 
|  | &sub-dir1 &sub-dir2</i> you could change it to <i>my-module | 
|  | my-module-project &sub-dir1 $sub-dir2</i> where my-module-project | 
|  | is an new folder on the CVS server. Committing the .project and | 
|  | .classpath files would create the files in this folder. </p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | </ol> | 
|  | <br /> | 
|  | <!-- Compatibility Between CVS Command-line Client and Eclipse --> | 
|  | <h1>Compatibility Between CVS Command-line Client and Eclipse</h1> | 
|  | <ol> | 
|  | <li><b><a name="commandLine_1">Does Eclipse use [WinCVS|CVS | 
|  | command-line client] to talk to the server?</a></b> | 
|  | <p>       </p> | 
|  | <p>No. Eclipse implements a CVS client in Java that talks directly | 
|  | to the server using the documented CVS protocol. No external CVS client | 
|  | is required.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="commandLine_2">The command-line CVS client stores | 
|  | information in CVS folders. Does Eclipse do the same thing? If so, | 
|  | where are the folders?</a></b> | 
|  | <p>       </p> | 
|  | <p>Eclipse stores CVS sync information in CVS/ folders in the same | 
|  | way as the command-line CVS client does. However, you rarely see these | 
|  | folders within Eclipse. They are marked using a Core facility called | 
|  | "team-private" which causes them to be hidden from view. If you open a | 
|  | (non-Eclipse) file explorer you will see that these directories and | 
|  | their contents appear on the file system.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="commandLine_3">Is Eclipse compatible with the | 
|  | command-line CVS client?</a></b> | 
|  | <p>       </p> | 
|  | <p>Eclipse Team CVS stores its meta information in a format that is | 
|  | compatible with the command-line CVS client. Thus you should be able to | 
|  | use a CVS command line client against Eclipse workspace files on disk. | 
|  | Please note that this support is experimental, and you may run into | 
|  | problems. However, we are very interested in making this work, so | 
|  | please report any bugs you find.</p> | 
|  | <p>Whenever you use external tools to modify workspace files, you | 
|  | must perform a Refresh from within Eclipse to make the workspace aware | 
|  | of the changes.</p> | 
|  | <p>You may encounter unexpected behaviour when using the | 
|  | command-line CVS client in conjunction with deleted folders. Eclipse's | 
|  | CVS support keeps track of deleted folders and their contents so that, | 
|  | on the next synchronization, the Synchronize view can properly report | 
|  | on the changes. This information is kept outside of the CVS meta folder | 
|  | structure. This is because in CVS you normally inform the repository of | 
|  | deletions prior to deleting them locally, which is a different workflow | 
|  | than we like to support in the Synchronization view. Thus it is | 
|  | recommended that you do not use the command-line CVS client while you | 
|  | have pending deletions to commit. In some circumstances it could cause | 
|  | the Synchronize view to display incorrect contents, although it should | 
|  | not cause any lost work.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="commandLine_4">Can I import a project into Eclipse | 
|  | that was checked out using the command line?</a></b> | 
|  | <p>       </p> | 
|  | <p>Yes you can. However, you may encounter errors from the builder | 
|  | related to the copying of the CVS folders. This can have two causes. | 
|  | The first is when the project is imported before the CVS plugin is | 
|  | loaded. To avoid this problem, make sure you open one of the CVS views | 
|  | before importing the project. The second is due to a "race" on import | 
|  | between the CVS plugin and other plugins that react to the import. If | 
|  | the CVS plugin wins the race, then the CVS folders are hidden but if | 
|  | another plugin discovers the CVS folders first, it may cause the | 
|  | workbench to "know" about them and perform inappropriate actions on | 
|  | them. The best way to solve the problem is to run a <b>Team>Update</b> | 
|  | on the project and then shutdown and restart Eclipse (although closing | 
|  | and reopening the view in which the CVS folders appear may work as | 
|  | well). If this fails, you may need to check the projects out from your | 
|  | repository using Eclipse instead of the command line client.</p> | 
|  | <p>There is a plugin named <i>org.eclipse.team.cvs.delta</i> | 
|  | available on the <a | 
|  | href="http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-vcm-home/dev.html">Development | 
|  | Resources</a> page that loads on startup and ensures that CVS folders | 
|  | are properly hidden. If you import CVS projects often, you may want to | 
|  | use this plugin. </p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="commandLine_5">Why does Eclipse corrupt my *.jar, | 
|  | *.zip, etc. files?</a></b> | 
|  | <p>       </p> | 
|  | <p>This problem is caused by the keyword substitution mode assigned | 
|  | to the file on the server. Any binary files must be marked as -kb. The | 
|  | default for CVS is to mark unknown file types as text. CVS provides | 
|  | cvswrappers and the cvs admin command to set file types.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="commandLine_6">When I use the command-line CVS on my | 
|  | project, why do the CVS folders sometimes appear in the Navigator View?</a></b> | 
|  | <p>       </p> | 
|  | <p>There are some cases where CVS folders are not hidden from the | 
|  | UI as the user would expect. For instance, CVS folders will appear if a | 
|  | user imports a CVS project into Eclipse before the CVS plug-in is | 
|  | loaded. To avoid this, open the CVS Repositories view (thus loading the | 
|  | CVS plug-in) before importing CVS projects into Eclipse. There is also | 
|  | a plugin available <a | 
|  | href="http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-vcm-home/dev.html">here</a> | 
|  | that will ensure that the CVS folders are properly hidden even if the | 
|  | CVS plugin is not loaded.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="commandLine_7">When I use the command-line CVS on my | 
|  | project, why go I get "resource out of sync" errors?</a></b> | 
|  | <p>       </p> | 
|  | <p>This occurs when files that are resources in Eclipse are | 
|  | modified outside of Eclipse. One solution is to perform a refresh | 
|  | (available from a resource's popup menu) on any resources or projects | 
|  | that where modified outside of Eclipse. There is also an "auto-refresh" | 
|  | plugin available from Platform Core (click <a | 
|  | href="http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-core-home/dev.html">here</a> | 
|  | to go to there).</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | </ol> | 
|  | <br /> | 
|  | <!-- Working with Patches --> | 
|  | <h1>Working with Patches</h1> | 
|  | <ol> | 
|  | <li><b><a name="patches_1">How do I send someone a patch?</a></b> | 
|  | <p>       </p> | 
|  | <p>If you have modified a project that you checked out from CVS, | 
|  | you may want to send those changes to someone else. This often occurs | 
|  | when you do not have commit rights, but want to send the changes to | 
|  | someone who does. To create a patch file:</p> | 
|  | <ol> | 
|  | <li>Select the changed project in the Navigator or other view.</li> | 
|  | <li>Context Menu->Team->Create Patch...</li> | 
|  | <li>Select a location for the patch.</li> | 
|  | <li>Use E-mail or other delivery method to send the patch to | 
|  | someone else.</li> | 
|  | </ol> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="patches_2">How do I apply a patch that someone sent | 
|  | me?</a></b> | 
|  | <p>       </p> | 
|  | <p>To apply a patch, such as one generated in the previous step, do | 
|  | the following:</p> | 
|  | <ol> | 
|  | <li>Select the changed project in the Navigator or other view.</li> | 
|  | <li>Context Menu->Compare With->Patch...</li> | 
|  | <li>Fill in the location of the patch file</li> | 
|  | <li>Click Next. A summary of changed files will appear.</li> | 
|  | <li>Click Finish. The changes are now merged into the workspace.</li> | 
|  | <li>Context Menu->Team->Synchronize. You may now commit the | 
|  | changes into the repository.</li> | 
|  | </ol> | 
|  | </li> | 
|  | <p>       </p> | 
|  | </ol> | 
|  | <br /> | 
|  | <!-- Linux --> | 
|  | <h1>Linux Issues</h1> | 
|  | <ol> | 
|  | <p>       </p> | 
|  | <li><b><a name="linux_0">On linux, using IBM JRE 1.3.0, I get a | 
|  | timeout when connecting to a repository. What's wrong?</a></b> | 
|  | <p>       </p> | 
|  | <p>Problems have been reported in this area using IBM JRE 1.3.0 on | 
|  | Linux. The solution is to upgrade your JRE to version 1.3.1.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="linux_1">On Red Hat 8, Eclipse fails to make a | 
|  | checkout but it works with other clients. Why?</a></b> | 
|  | <p>       </p> | 
|  | <p>The problem may be the encoding in /etc/sysconfig/i18n file. If | 
|  | the language encoding is </p> | 
|  | <pre>	LANG="en_US.UTF-8"<br />		</pre> | 
|  | changing it to | 
|  | <pre>	LANG="en_US"<br />		</pre> | 
|  | should fix the problem. | 
|  | <p></p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | </ol> | 
|  | <!-- Windows --> | 
|  | <h1>Windows Issues</h1> | 
|  | <ol> | 
|  | <p>       </p> | 
|  | <li><b><a name="windows_0">Eclipse crashed Windows 2000 (blue screen) | 
|  | when performing a CVS operation. What happened?</a></b> | 
|  | <p>       </p> | 
|  | <p>Instances of this have been reported that involve the NDIS.sys | 
|  | driver and particular brands of network cards (see bug <a | 
|  | href="http://dev.eclipse.org/bugs/show_bug.cgi?id=21276">21276</a>).</p> | 
|  | </li> | 
|  | <p>      </p> | 
|  | <li><b><a name="windows_2">Eclipse always times out when performing a | 
|  | Synchronize on one or two particular machines?</a></b> | 
|  | <p>       </p> | 
|  | <p>Instances of this have been reported that involve the VIA | 
|  | on-board network cards (see bug <a | 
|  | href="http://dev.eclipse.org/bugs/show_bug.cgi?id=21276">27077</a>). | 
|  | Changing the network card fixed the problem.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="windows_3">Why do CVS operations slow down when I am | 
|  | connected to my network/dial-up?</a></b> | 
|  | <p>       </p> | 
|  | <p>I have a large number of entries in my hosts file for anti-ad | 
|  | software - and when I'm connected, name resolution (even to localhost) | 
|  | slows to a crawl. When I'm not connected, localhost gets resolved at | 
|  | normal speed. I think this might be a "feature" of 2000/XP - it didn't | 
|  | happen in NT.</p> | 
|  | </li> | 
|  | <li><b><a name="windows_4">Why do all my files show as outgoing | 
|  | changes?</a></b> | 
|  | <p>       </p> | 
|  | <p>The CVS plugin uses timestamps of the files on disk to track the | 
|  | modification state of versioned files. As a result, there are some | 
|  | cases where Windows users may find that as a result of either (1) an | 
|  | automatic daylight savings change or (2) moving files between file | 
|  | systems, that all the files show up as outgoing changes. See <a | 
|  | href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5337">Bug 5337</a> | 
|  | for an explanation of the problem and workarounds. </p> | 
|  | <p>Thers is a utility action that will reset the timestamps so the | 
|  | files are in-sync with CVS. Be warned however that this utility resets the | 
|  | timestamps for any file whose timestamp differs from the sync timestamp by 1 hour. | 
|  | There is a possibility that this could reset a file that is really dirty. Use at your own risk. | 
|  | To use the action, install the plugin found <a href="http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-vcm-home/plugins/fixtimestamps.zip">here</a> | 
|  | and them run the CVS Util/Fix Timestamps command available from the context menu of the Resource Navigator. | 
|  | </p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | </ol> | 
|  | <!-- Miscellaneous --> | 
|  | <h1>Miscellaneous</h1> | 
|  | <ol> | 
|  | <li><b><a name="misc_0">Is there any equivalent to CVS_CLIENT_LOG is | 
|  | Eclipse?</a></b> | 
|  | <p>       </p> | 
|  | <p>Yes, there are tracing facilities in Eclipse that will allow you | 
|  | to see what messages are being communicated between the CVS client and | 
|  | server. Here's how:</p> | 
|  | <ol> | 
|  | <li>Create a file named ".options" in the directory you start Eclipse from | 
|  | (in most cases this is the directory that contains the executable but | 
|  | it may differ in some cases: for instance, if you use a shortcut in windows | 
|  | and specify a different starting directory) that contains the following | 
|  | 2 lines that enable CVS debugging. | 
|  | <pre>		org.eclipse.team.cvs.core/debug=true<br />		org.eclipse.team.cvs.core/cvsprotocol=true<br />		</pre> | 
|  | </li> | 
|  | <li>Start Eclipse with the following parameters tailored to you | 
|  | local setup (The below example is for windows). The important aspects | 
|  | are the use of java.exe instead of javaw.exe and the inclusion of the | 
|  | -debug and -consolelog options. These will cause the debug console to | 
|  | be visible and for debugging output to appear in the console. | 
|  | <pre>		C:\eclipse\eclipse.exe<br />		   -vm C:\jre\bin\java.exe<br />		   -data C:\eclipse\workspace<br />		   -debug<br />		   -consolelog<br />		</pre> | 
|  | </li> | 
|  | <li>Inside Eclipse, create your repo location and expand it in | 
|  | the repositories view (for example). The CVS command traffic in the | 
|  | debug console should contains an invocation of the update command that | 
|  | looks something like (this is output from dev.eclipse.org): | 
|  | <pre>		CMD> cvs -n update -d "."<br />		...<br />		update<br />		E cvs server: Updating .<br />		E cvs server: New directory `CVSROOT' -- ignored<br />		E cvs server: New directory `jdt-core-home' -- ignored<br />		E cvs server: New directory `jdt-debug-home' -- ignored<br />		...<br />		</pre> | 
|  | </li> | 
|  | </ol> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="misc_1">What is the .project file, and should I | 
|  | release it to CVS?</a></b> | 
|  | <p>       </p> | 
|  | <p>The .project file is created and maintained by Eclipse. It | 
|  | stores meta-information about the project, such as which projects it | 
|  | references and what type of project it is. If other members of your | 
|  | team will be using Eclipse to check out this project from CVS, you | 
|  | almost certainly want to release the .project file to CVS. Even if | 
|  | other members of your team are not using Eclipse, you may still want to | 
|  | release the .project file so that the information is persisted for you.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="misc_2">I don't have update access to the CVS | 
|  | repository. Can I still check out a project with Eclipse?</a></b> | 
|  | <p>       </p> | 
|  | <p>In some circumstances, depending on permissions on the server, | 
|  | you may not be able to browse the repository in the CVS Repositories | 
|  | view. In this case, it may still be possible to check out the project | 
|  | you want.</p> | 
|  | <ol> | 
|  | <li>Create an empty project.</li> | 
|  | <li>Context Menu->Team->Share Project...</li> | 
|  | <li>Enter the repository information and click Finish</li> | 
|  | <li>The Synchronize view appears. Update all incoming changes.</li> | 
|  | </ol> | 
|  | <p>The project in your workspace is now shared with the CVS | 
|  | repository, and contains the remote contents.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="misc_3">What does "Terminated with fatal signal 10" | 
|  | mean?</a></b> | 
|  | <p>       </p> | 
|  | <p>There is a bug in the CVS server related to some compression | 
|  | levels. If you get this error, change the compression level on the CVS | 
|  | preferences page and see if that helps.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="misc_4">I copied some folders from one CVS project to | 
|  | another and the old CVS information remained. What happened?</a></b> | 
|  | <p>       </p> | 
|  | <p>There is a bug in the CVS client in Eclipse 2.0 that will not | 
|  | purge the CVS folders properly if a folder under CVS control is moved | 
|  | into a folder that is not under CVS control. If this occurs, you will | 
|  | need to delete the CVS folders manually.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="misc_8">I used Team > Share Project to connect a | 
|  | local project to an existing project and it takes forwever. Why?</a></b> | 
|  | <p>       </p> | 
|  | <p>The particular method you have chosen to populate your workspace | 
|  | (i.e. create a new project and then sync against a large existing one) | 
|  | happens to be one of the most ineffiecient operations in the Eclipse | 
|  | CVS client. The CVS protocol does not support this type of operation | 
|  | directly which results in the ineffiecient, communication intensive | 
|  | operation. The proper way to populate your workspace is to use | 
|  | "Checkout as Project" from the CVS Repositories view. Once the project | 
|  | and its contents exists locally, the synchronize operatons should be | 
|  | much faster.</p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="misc_9">Does Eclipse support Watch/Edit?</a></b> | 
|  | <p>       </p> | 
|  | <p>Eclipse 2.1 supports CVS Edit/Unedit. In 2.0, you can use the | 
|  | following workaround:</p> | 
|  | <pre>		Run->External Tools->Configure...->New<br />		Name: CVS Watchers<br />		Tool Location: C:\cygwin\bin\cvs.exe<br />		Tool arguments: watchers<br />		Working directory: ${container_loc}<br />		After running, refresh: Nothing<br />		Check Show Execution Log on Console<br />		OK<br />		New<br />		Name: CVS Edit<br />		Tool Location: C:\cygwin\bin\cvs.exe<br />		Tool arguments: edit ${resource_name}<br />		Working directory: ${container_loc}<br />		After running, refresh: Nothing<br />		Check Show Execution Log on Console<br />		OK<br />		</pre> | 
|  | <p> Unedit works the same as Edit, Editors works the same way as | 
|  | Watchers. To use the tools, highlight the file or directory on which to | 
|  | execute the CVS command, then select Run->External Tools-><tool | 
|  | name=""> If you don't select the file/directory first, CVS will | 
|  | complain that the CVSROOT variable must be set first. </tool></p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="misc_12">Why do I get a "Pre-commit failed" error | 
|  | with no detailed error message?</a></b> | 
|  | <p>       </p> | 
|  | <p> The problem is that the CVS server communicates the error | 
|  | details as M messages instead of E messages and so the error handling | 
|  | in Eclipse doesn't display them. Eclipse has a CVS console which you | 
|  | can open from the Window>Show View>Other menu command. If this | 
|  | view is open and you run the failing commit, it will show you the error | 
|  | details. </p> | 
|  | </li> | 
|  | <p>       </p> | 
|  | <li><b><a name="misc_13">Why can"t I get my pserver CVS proxy to work?</a></b> | 
|  | <p>       </p> | 
|  | <p> There are some quirks with some firewalls. See bug | 
|  | <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=133930">133930</a> | 
|  | for details</p> | 
|  | </li> | 
|  | </ol> | 
|  | </body> | 
|  | </html> |