How can I list files in CVS without an initial checkout?

If it's a one-off operation you don't need to set the CVSROOT environment variable. Just use the d argument for ad-hoc repository specification If your version of CVS/CVSNT is not too old (to be exact you'd need either CVS 1.12.8 or higher or CVSNT) then, as others have said after having logged in cvs ls should work just fine If your version of CVS/CVSNT does not support the ls command then you can try cvs checkout -c which will only dump the list of predefined modules If your version of CVS/CVSNT is old enough you might get lucky with the following hack (does not work with more recent versions of CVSNT unless compatibility mode has been enabled on the server): First check out the root of the repository to some temp location , so we have the necessary metadata: cvs -dyour CVSROOT string co -l -dTemp Then simulate an update (with directories) of that folder: cd Temp cvs -n up -d This will emit (almost) the same output as an actual checkout without actually getting the files from the server If you're on Windows and using a fairly recent version of CVSNT as the client then cvs ls will actually automatically fall back to this mechanism when it detects a server that does not support ls itself Oh yes, and AFAICT there is no such thing as cvs -list It's not even valid CVS command line syntax: list would have to be a global argument rather than a command as it follows directly after the cvs and there is no actual command specified. But then again, all multi-letter arguments (such as help ) would have to start with a double dash, e.

G cvs --version Were you all maybe thinking of cvs list which would be a mere alias for cvs ls?

If it's a one-off operation you don't need to set the CVSROOT environment variable. Just use the -d argument for ad-hoc repository specification. If your version of CVS/CVSNT is not too old (to be exact you'd need either CVS 1.12.8 or higher or CVSNT) then, as others have said, after having logged in cvs ls should work just fine.

If your version of CVS/CVSNT does not support the ls command then you can try cvs checkout -c which will only dump the list of predefined modules. If your version of CVS/CVSNT is old enough you might get lucky with the following hack (does not work with more recent versions of CVSNT unless compatibility mode has been enabled on the server): First check out the root of the repository to some temp location , so we have the necessary metadata: cvs -dyour CVSROOT string co -l -dTemp . Then simulate an update (with directories) of that folder: cd Temp cvs -n up -d This will emit (almost) the same output as an actual checkout without actually getting the files from the server.

If you're on Windows and using a fairly recent version of CVSNT as the client then cvs ls will actually automatically fall back to this mechanism when it detects a server that does not support ls itself. Oh yes, and AFAICT there is no such thing as cvs -list. It's not even valid CVS command line syntax: -list would have to be a global argument rather than a command as it follows directly after the cvs and there is no actual command specified.

But then again, all multi-letter arguments (such as --help) would have to start with a double dash, e.g. Cvs --version. Were you all maybe thinking of cvs list which would be a mere alias for cvs ls?

I'm using this one : ftp.gnu. Org/non-gnu/cvs/binary/stable/x86-woe/cvs-1-11-14. Zip is this the wrong one?

Maybe that's why it's not working. – dr. evil May 22 '09 at 8:45 From : nongnu. Org/cvs – dr. evil May 22 '09 at 8:45 Judging by the version number I think that one should be fine.

I'm using CVSNT 2.5.04 myself (which unfortunately does no longer appear to be available from the original source - it has by now been superceded by some semi-commercial product). Also, I assume that that is what you're using on the client rather than on the server? You haven't written anything yet about what happens when you do cvs ls (after having set the CVSROOT and logged in).

– Oliver Giesen May 22 '09 at 12:18 correction: CVSNT 2.5.04 is still available for free download from cvsnt. Org - it's just that they made the download link somewhat obscure - search near the right hand border of the page - note that the user data fields are all voluntary – Oliver Giesen May 22 '09 at 12:25 2 When I have tried to perform the 'cvs ls' command, I get an error saying it is unsupported by the server. Using the 'cvs -dyour CVSROOT string co -l -dTemp .' in conjuction with 'cvs -n up -d' worked well enough for what I needed.

– Chad Gorshing Dec 22 '09 at 18:17.

Cvs -d $CVSROOT rls hope this helps (cvs ver. 1.12.13).

It works! Thanks! – Somebody still uses you MS-DOS Nov 5 '10 at 13:25.

You need to do a login first, like this: cvs -d :pserver:[email protected]. Net:/cvsroot/evocms login Then, as others have said, use the ls command. For background, see a discussion of remote repositories.

Now I see, I think the problem is in my computer where -d doesn't set the environment variable, don't know why. – dr. evil May 20 '09 at 19:10 I'm doing this : "c:\>set cvsroot=:pserver:anonymous:@evocms.cvs.sourceforge. Net:/cvsroot/evocms" "c:\>cvs -list" ->> doesn't work.

– dr. evil May 20 '09 at 19:24 Did you try cvs -list pserver:[email protected]. Net:/cvsroot/evocms – JeffH May 20 '09 at 20:03 That doesn't work for me – dr. evil May 20 '09 at 20:54.

There is a similiar command in cvs Usage: cvs ls cvs -list to list modules, ls to list contents of modules. EDIT: They are right, the commands list and ls are the same, I´m sorry for that. Well I don´t really see how to list a cvs dir without actually checking it out.

Does the repo your are trying to access have a cvsweb access?

Hum, try setting the CVSROOT parameter as an enviroment variable, thats what I use, so you don´t have to pass the entire string with every command. I never tried with ls though. – Decio Lira May 20 '09 at 19:20 I've tried that as well somehow that doesn't work either, see my update in the question.

Maybe I'm missing something. – dr. evil May 20 '09 at 19:29 What version of CVS are you using? The -list parameter doesn't exist in any of the versions I know of.

– Oliver Giesen May 22 '09 at 7:27 right now i´m using cvsnt on windows version 2.0.51d. – Decio Lira May 22 '09 at 12:14 see discussion on simon622's answer. The command is actually "cvs list" (without the dash) and is a mere alias for "cvs ls", i.e.

There should be absolutely no difference between "cvs list" and "cvs ls". – Oliver Giesen May 22 '09 at 12:41.

All, Here is a comprehensive way to do it: Fire up the command prompt Copy this cvs -d CVSROOT login (or, whatever your corresponding CVSROOT is) Type in your password and press enter when prompted. It may take a while, but after that is done, a new prompt will be available. Type in cvs –d cvs -d CVSROOT ls BAM!

There's your listing Keep in mind, if you don't have CVSROOT defined, you can just copy and paste your own CVSROOT here.

I can't get this to work with a CVSROOT containing the ':ext:' protocol. CVS complains that only 'pserver' is accepted, I don't appear to have pserver access here at work :-( – Big Rich Aug 4 at 10:16.

See cvs commands for example; cvs list will list all modules in CVS server.

This parameter does not exist! It's not even valid CVS command syntax to begin with! – Oliver Giesen May 22 '09 at 7:31 It exists as a command instead of an argument, using; "cvs list" WILL list the modules on a server.

– simon622 May 22 '09 at 8:04 Yeah, OK, I already guessed that by now. This would work because "list" is just a synonym of "ls". See "cvs --help-synonyms" – Oliver Giesen May 22 '09 at 12:20.

I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.

Related Questions