Summary: | [FAQ CVSNT] Resource ... is not a child of folder ... Error | ||
---|---|---|---|
Product: | [Eclipse Project] Platform | Reporter: | remi bernadberoy <rbernadberoy> |
Component: | CVS | Assignee: | Bogdan Gheorghe <gheorghe> |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | critical | ||
Priority: | P3 | CC: | c.hoeflake, d.de.wit, eclipsebugs, fengyufeiyang, ha_tech_2004 |
Version: | 3.1.1 | Keywords: | faq |
Target Milestone: | 3.2 | ||
Hardware: | PC | ||
OS: | Windows XP | ||
Whiteboard: |
Description
remi bernadberoy
2006-02-22 05:49:19 EST
Could you describe the steps you used to create the project? Are you checking our a folder into an existing project or are you checking out a module defined in the CVSROOT/modules file? If it is a model, could you post the definition that appears in the CVSROOT/modules file? I am checking out a module into an existing java project I´ve just created (empty). Where can I find the CVSROOT/modules file? I don´t see any. It's an administration file in the CVSROOT project of your repository. You can expand the project in the CVS Repository Explorer and see if there is a line that starts with the name of the module you are loading. Also, you may be interested to know that there is an option at the bottom of the merge wizard "Perform the merge into the local workspace". This does a traditional "cvs update -j". You should be able to use this without error but conflicts will result in the traditional CVS conflict mrkup that you'll need to resolve manually. We've had other similar reports of problems with CVSNT. > Resource ... is not a child of folder ... I've encounted the very same issues (in both 3.1.1 and 3.2M5), appearently especially when files were deleted by another user (in IntelliJ, commited using Tortoise). Furthermore, I ran into "SocketException: Connection reset" in org.eclipse.team.internal.ccvs.core.connection.Connection.readLine all the time. However, for me it seemed to be related to the prefixes, as described in some old bug reports. I could not find a way to disable the prefixes in CVSNT 2.5.03, but solved it by renaming the CVSNT repository to match the path (lowercase drive name, like d:/my/cvsrepo, ignoring the CVSNT warning about Unix systems), and changing the Eclipse CVS repository settings to use d:/my/cvsrepo for the Repository Path. Prefixes: https://bugs.eclipse.org/bugs/show_bug.cgi?id=73646 (and others) As for the first "bug" in this very report: > I don´t understand why there is a CVS folder in my eclipse project See the FAQs, "The command-line CVS client stores information in CVS folders. Does Eclipse do the same thing? If so, where are the folders?" and "Is Eclipse compatible with the command-line CVS client?" -- and read them carefully! http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/platform-vcm-home/docs/online/cvs_features2.0/cvs-faq.html#commandLine_1 Arjan. I know cvs uses CVS folders to save repositories information. But I meant that I have one at my project level when it is a "virtual" directory. So my modules are inside the project and the project root should not have CVS folder. Other CVS clients don´t create a CVS folder at this level. Most important: did the workaround I described for the CVSNT prefixes solve your 2nd problem?
> I meant that I have one at my project level when it is
> a "virtual" directory. So my modules are inside the project
> and the project root should not have CVS folder.
I don't know what you mean with "virtual", so I guess you mean something different. Still, for a structure like
01 /workspace
02
03 /myproject
04 /CVS
05 /src
06 /CVS
07 /java
08 /CVS
09 /webapp
10 /CVS
11 /test
12 /CVS
13 /repository
14 /CVS
14 /resources
15 /CVS
16 .classpath
17 .project
18 maven.xml
19 project.xml
20
21 /anotherproject
22 /CVS
I really do expect the CVS folder on line 4 (I do, for example, need maven.xml and project.xml to be kept in CVS, and also the subfolders repository, resources and above all: src), but not on line 2. And that's indeed how both my installation of Eclipse, WinCVS and Tortoise create the CVS folders.
So what's the directory structure in which you do not expect a CVS folder within the root?
Regards,
Arjan.
To answer your question. When I check out a module into a project I do not expect to have a CVS directory at root nivel. For example: /Project /MyModule1 /CVN /MyModule2 /CVN I expect the CVS directories to be at my modules levels. No reason to have CVS directories at Project level when the project itself is not synchronized to cvs. Others tools don´t create those CVS directories. About the prefixes. Well, I have to say I don´t get what I am supposed to do from the client side. IMPORTANT: It seems that I get the ".. is not a child of folder ... Error" every time somebody adds a new directory in CVS (throught others cvs client like tortoise or IDEA). Like if eclipse does not create new directories and then tries to check out files into missing directories. Since found this error, our team work with cvs can't be normally. we got in a big trouble. We only can do that: Everytime someone add a new directory and add a file in this directory and commit it(it seem that it only commit the new file action, and not commit the new directory action). other developer want to update the code, he is in the big trouble, he only can update the whole project directory, this is a danger work, and is not a normal way to do the work. it puzzled us for 2 month.... So, we are eager to know how to fixed this problem, or when will the eclipse update or fixed this bug? Thanks you. A java developer from China. I am also experiencing this since upgrading cvsnt to version 2.5.03.2260 from 2.0.something I haven't been able to reproduce this yet. Can anyone provide me with a set of steps to reproduce this behaviour? Please include as much detail as possible - (ie. start from a blank workspace) Thanks! Suppose you are in a team which at least 2 persones, lets say person A and B. Furthermore we have an existing (simple) directory structure. The project is called Root. Now, person A adds the directory 'TestSync' somewhere in the structure. In the directory a file called 'TestSync.java' is added. Person B synchronizes for example Root. Now you get the error: An error occured synchronizing /Root: resource .../TestSync/TestSync.java is not a child of folder Root I thing the problem occurres when somebody adds a new directory which a new file in there. On CVSNT 2.5.03.2260 we have checked the "Emulate '-n checkout' bug" (Compatibility tab). Now everythings works nice. So it seems to me that Eclipse depends on a bug. The "cvs -n update" behavior is the behavior of a 1.11.2 server. Although this may not be the desired behavior, it is the behavior none the less. IMHO, it is a bug in CVSNT to have a separate preference for it. We will update the FAQ and server compatibility page with this information. *** Bug 128577 has been marked as a duplicate of this bug. *** FAQ updated |