This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
I found that, when I select a directory A (mounted with vcs-pcvs) and this directory has three children A.A, A.B and A.C, and I select the option Refresh Recursively, all the files in the repository (either the files in A.A, A.B and A.C) is listed in directory A, the files in A.A, A.B and A.C on my working directory becames Local. And then, when I'm in the same directory (A) listing all the files from A, A.A, A.B and A.C, and I select Refresh, the error file (the ones from A.A, A.B and A.c) are removed from A.
Moving to vcsgeneric module, where the PVCS profile is located.
Which build do you use? I can not reproduce this behavior. Also, you use a project imported from NetBeans 3.5? If yes, are you able to reproduce this bug with a newly mounted PVCS filesystem?
I'm using 3.6 RC1 on window$ 2000. I didn't import a project from 3.5.1 I think that the module of this issue is wrong, because I'm using CVS (pserver). I reproduce the bug this way from scratch: - mount a Version Control Filesystem. - profile CVS - CVS server type: pserver - repository: /test - add a directory A in root (/A) - add a directory A in A (/A/A) - add a directory B in A (/A/B) - add a text file a.a in /A/A - add a text file a.b in /A/B - add a text file a in /A - Add all the directories and file to CVS and commit them - ok, all the files are in the correct path - select the /A directory and click Refresh Recursively - The files a (correct, /A/a), a.a (wrong, the correct path is /A/A/a.a), a.b (wrong, the correct path is /A/B/a.b) appears in the /A directory. - select the /A directory and click Refresh - The files a.a, a.b disappear from /A
Aha, you wrote "pcvs" and I've read it as "pvcs". Changing the summary, will test the CVS profile...
Hmm, it works fine for me on Windows XP and NetBeans 3.6 RC1. Can someone from QE please test this? Thanks.
Peter, can you please take a look at this one and try to reproduce it ? Thanks, Jirka
I'm unable to reproduce this as well.Scheduling for promoD for now.
If you tell me the class (full name) and the line that is called when the user press Refresh Recursively, I can try to find the problem. Thank's for the time.
Well, the code is not much straightforward. CVS implementation of recursive refresh is in vcsgeneric/profiles/cvsprofiles module: org.netbeans.modules.vcs.profiles.cvsprofiles.list.CvsListRecursiveCommand. Method listRecursively() is called and it's supposed to build the hierarchy of versioned files in filesByNameCont object. So either the hierarchy is build in a wrong way, or the infrastructure that translates these objects into files corrupts the hierarchy (vcscore module, class org.netbeans.modules.vcscore.caching.VcsCache, method readDirFinishedRecursive().
Hi guys, It's happening (or at least it's easily reproductable by me and Peter) using build-in client, thus changing summary. Just mount a CVS-INT FS, have some [up-to-date] sources in it and on its root perform Ref.Rec. All [up-to-date] files became [local] At absolutely clear up every cmd.nbxxxx.cache file :-( On CVS-EXT it seems it works fine.
proposed relnote: After running Refresh Recursively on the root of a CVS filesystem (using the IDE's built-in CVS client), the status of up-to-date files is changed to Local. Workaround: Run the Refresh Recursively command again to display the current status.
Well, the problem is, that *every* Recursive Refresh on the root of the filesystem with built-in client makes all files [Local]. This is a bug in the javacvs library, the status command does nothing. The workaround is either to use the command-line client, or run only non-recursive Refresh on the root of the filesystem. Recursive Refresh works good for all folders under the FS root, therefore all subfolders can be selected and Recursive Refresh can be invoked on them.
Changing subcomponent to "library". The status command does not work correctly when there is no CVS sub-directory in the current working directory.
reworked proposed workaround: Workarounds: To workaround the problem, do one of the following: * Remount the CVS filesystem using the IDE's command-line support instead of the built-in client support. * Refresh the root of the CVS filesystem with the Refresh command. You can use the Refresh Recursively command on the filesystem's subnodes.
Sounds pretty good to me. Thanks Patrick.
The problem can be reproduced only when the CVS/ folder does not exist in the FS root.
It's not only about status, but also log, update and probably bunch of other commands. I'm changing the summary to better describe the problem. The non-functioning rec. refresh is one of the consequences of this problem.
The problem is fixed in trunk. All subdirectories that have CVS subfolders are processed: /cvs/javacvs/libsrc/org/netbeans/lib/cvsclient/command/BasicCommand.java,v <-- BasicCommand.java new revision: 1.50; previous revision: 1.49
Verified.