platform-vcm-home/docs/online/cvs_features2.0/cvs-faq.html

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.59, Wed May 31 19:52:53 2006 UTC revision 1.60, Tue Jun 6 19:49:57 2006 UTC
# Line 1  Line 1 
1  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
3  <head>  <head>
4    <meta content="application/xhtml+xml; charset=utf-8"    <meta content="application/xhtml+xml; charset=utf-8" http-equiv="content-type" />
5   http-equiv="content-type" />    <meta http-equiv="refresh" content="2;url=http://wiki.eclipse.org/index.php/CVS_FAQ">
6    <meta content="haran" name="author" />    <title>Eclipse Platform - CVS FAQ Redirect</title>
   <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>  
7  </head>  </head>
8  <body>  <body>
9  <table width="100%" cellpadding="2" cellspacing="5" border="0">  <p>The Eclipse CVS FAQ has moved to <a herf="http://wiki.eclipse.org/index.php/CVS_FAQ">http://wiki.eclipse.org/index.php/CVS_FAQ</a>.
10    <tbody>  You will be redirected shortly.
     <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$</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: &quot;Error  
     fetching file revisions&quot;?</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 &quot;Resource &lt;name&gt;  
       is not a child of folder &lt;folder&gt;&quot;?</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 &gt; 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&quot;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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
     <ol>  
       <li>Window-&gt;Show View-&gt;Other. Select CVS-&gt;CVS  
 Repositories.</li>  
       <li>Context Menu-&gt;New-&gt;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-&gt;Check Out As Project.</li>  
     </ol>  
     <br />  
 The project now exists in your workspace. </li>  
   <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />  
   </p>  
   <li><b><a name="gettingStarted_2">How do I put a project into CVS  
 from my workspace?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
     <ol>  
       <li>Select the project in the Navigator or other view.</li>  
       <li>Context Menu-&gt;Team-&gt;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-&gt;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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
     <ol>  
       <li>Create a project in the workspace.</li>  
       <li>File-&gt;Import, select File System, locate your files, click  
 Finish.</li>  
       <li>Select the project in the Navigator or other view.</li>  
       <li>Context Menu-&gt;Team-&gt;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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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-&gt;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-&gt;Branch or  
 Version...". </li>  
   <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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&gt;Update and Team&gt;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: &quot;Error  
     fetching file revisions&quot;?</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>&nbsp;</p>  
   </li>  
   
   <li><b><a name="server_13">Why do I get the error &quot;Resource &lt;name&gt; is not a child of folder &lt;folder&gt;&quot;?</a></b>  
     <p>CVSNT has a separate option called <em>Emulate &quot;-n checkout&quot; bug</em> that must be enabled for Eclipse  
     to work properly. This is because the &quot;bug&quot; 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-&gt;Preferences-&gt;Team-&gt;CVS-&gt;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 &gt; CVS &gt; 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 />  
     &nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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-&gt;Team-&gt;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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
   <li><b><a name="10_4">Is a Branch the same as a Stream? What about  
 other 1.0 terminology?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
   </li>  
   <li><b><a name="java_2">What is the .classpath file? Should I commit  
 it to the repository?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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 &amp;test<br />  
 MyProject &amp;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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
   <li><b><a name="java_4">How do I check out a module definition as a  
 Java project?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
   <li><b><a name="java_5">Why does the bin directory keep appearing in  
 the Synchronize view?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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  
 &gt; 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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
   <li><b><a name="java_5a">I ignored the bin directory but it appears  
 to be shared anyway. Why?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
   <li><b><a name="java_6">How do I use CVS keywords in Java templates?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
     <p>Substitute the usual keyword (e.g. $Revision$) with the $  
 escaped version (e.g. $$Revision$$). </p>  
   </li>  
   <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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  
 &amp;sub-dir1 &amp;sub-dir2</i> you could change it to <i>my-module  
 my-module-project &amp;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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
   <li><b><a name="commandLine_3">Is Eclipse compatible with the  
 command-line CVS client?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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&gt;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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
   <li><b><a name="commandLine_5">Why does Eclipse corrupt my *.jar,  
 *.zip, etc. files?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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-&gt;Team-&gt;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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
   <li><b><a name="patches_2">How do I apply a patch that someone sent  
 me?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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-&gt;Compare With-&gt;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-&gt;Team-&gt;Synchronize. You may now commit the  
 changes into the repository.</li>  
     </ol>  
   </li>  
   <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
 </ol>  
 <br />  
 <!-- Linux -->  
 <h1>Linux Issues</h1>  
 <ol>  
   <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
 </ol>  
 <!-- Windows -->  
 <h1>Windows Issues</h1>  
 <ol>  
   <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
   <li><b><a name="windows_0">Eclipse crashed Windows 2000 (blue screen)  
 when performing a CVS operation. What happened?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
   <li><b><a name="windows_2">Eclipse always times out when performing a  
 Synchronize on one or two particular machines?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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&gt; 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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
   <li><b><a name="misc_1">What is the .project file, and should I  
 release it to CVS?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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-&gt;Team-&gt;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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
   <li><b><a name="misc_3">What does "Terminated with fatal signal 10"  
 mean?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
   <li><b><a name="misc_8">I used Team &gt; Share Project to connect a  
 local project to an existing project and it takes forwever. Why?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
   <li><b><a name="misc_9">Does Eclipse support Watch/Edit?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
     <p>Eclipse 2.1 supports CVS Edit/Unedit. In 2.0, you can use the  
 following workaround:</p>  
     <pre>               Run-&gt;External Tools-&gt;Configure...-&gt;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-&gt;External Tools-&gt;<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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
   <li><b><a name="misc_12">Why do I get a "Pre-commit failed" error  
 with no detailed error message?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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&gt;Show View&gt;Other menu command. If this  
 view is open and you run the failing commit, it will show you the error  
 details. </p>  
   </li>  
   <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>  
     <li><b><a name="misc_13">Why can&quot;t I get my pserver CVS proxy to work?</a></b>  
     <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </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>  
11  </body>  </body>
12  </html>  </html>

Legend:
Removed from v.1.59  
changed lines
  Added in v.1.60