What exactly is CVS and how can I use it to my advantage

Ye' old general discussion board. Basically, for everything that isn't covered elsewhere. Come here to shoot the breeze, shoot your mouth off, or whatever suits your fancy.
This forum is not for asking programming related questions.

Moderator: General Moderators

User avatar
Ambush Commander
DevNet Master
Posts: 3698
Joined: Mon Oct 25, 2004 9:29 pm
Location: New Jersey, US

Post by Ambush Commander »

To reiterate, the Subversion client can be run on any platform where APR runs. The Subversion server can also be run on any platform where APR runs, but cannot host a repository on Win95/Win98/WinMe.
Roja
Tutorials Group
Posts: 2692
Joined: Sun Jan 04, 2004 10:30 pm

Post by Roja »

Ambush Commander wrote:
To reiterate, the Subversion client can be run on any platform where APR runs. The Subversion server can also be run on any platform where APR runs, but cannot host a repository on Win95/Win98/WinMe.
D'Oh!

So use VMWare. Or set up a second machine.

Sheesh. This isn't even your thread!
User avatar
Ambush Commander
DevNet Master
Posts: 3698
Joined: Mon Oct 25, 2004 9:29 pm
Location: New Jersey, US

Post by Ambush Commander »

Okay. Perhaps I shouldn't have hijacked this thread for my own purposes, but Subversion sounded interesting, and I did a little research, and came to the conclusion that it wouldn't be possible to directly install a subversion server on your computer (unlike PHP, Apache etc.) and therefore I couldn't use it.

I am mistaken. I can use Subversion.

However, as you pointed out, that would require me to set up another machine, get a free Subversion repository for an open-source project or use VMWare to set up the server. Each of these are viable options, but for someone who has already got CVSNT working on Windows (and just has to learn the ropes of CVS), this is too much.

VMWare is a beast of it's own, which will require more learning. For some developers, this is not knowledge they necessarily need, although it may be helpful (things I can think up of off the top of my head are testing PHP scripts under multiple configurations and PHP versions or testing them under different operating systems). I am not saying that learning VMWare is not worthwhile, I am saying that learning VMWare is a large task just to use an alternative to CVS. It also presents another problem:

Learning Linux. Linux is reputed for its steep learning curve, and I have played around with it a bit, but at my current level, it would be impossible to do any productive work on a Linux system. I am deeply rooted in Windows, having used it for many years and learning its ends and outs. I have done lots of configuration tweaks and scheduled tasks + batch file combinations that would take a bit of time to replicate on Linux (although I have no doubt in my mind that it is possible). Perhaps setting up Subversion on Linux would be a good learning experience, but also a very time consuming one.

So, let's put this in anecdote form. A guy has just gotten into PHP. He uses Windows (like many of us do, admit it), and works with it a little bit, and begins to get into programming. A friend tells him about CVS and he thinks "Great idea!" He has trouble learning CVS though. Then another friend tells him about "Subversion", and says that's it's better than CVS. So, he goes off to download a copy of Subversion. Much to his dismay, he can't install a Subversion server on his machine (even though he could do it with CVS). He can set up a Linux server (virtually or physically) and then configure Subversion on that, but opts to stick with CVS for now.

Sorry if I seemed a bit thickheaded in my previous posts. Basically, it boils down to I'm lazy. Ah, the wonders of thread hijacking.
Roja
Tutorials Group
Posts: 2692
Joined: Sun Jan 04, 2004 10:30 pm

Post by Roja »

Ambush Commander wrote:A guy has just gotten into PHP. He uses Windows (like many of us do, admit it), and works with it a little bit, and begins to get into programming. A friend tells him about CVS and he thinks "Great idea!" He has trouble learning CVS though.
Stop there. If someone can't figure out the CVS client, they shouldnt be trying to run a repository yet.

Its that simple. If they can however, then there are plenty of options that allow them to run SVN just as easily as CVS - as long as you leave the repository to someone more experienced.

In all my years of coding, I've never run a repository - for CVS or SVN. Its overkill, unneccesary, and beyond the scope of the original poster. Your anecdote fits a different description: Someone trying to take on more than they should.

SVN for the win.
User avatar
Ambush Commander
DevNet Master
Posts: 3698
Joined: Mon Oct 25, 2004 9:29 pm
Location: New Jersey, US

Post by Ambush Commander »

Stop there. If someone can't figure out the CVS client, they shouldnt be trying to run a repository yet.

Its that simple. If they can however, then there are plenty of options that allow them to run SVN just as easily as CVS - as long as you leave the repository to someone more experienced.
Erm, I have a repository running locally for CVS. I use ToirtoiseCVS as a frontend to CVS. I know what a commit and a checkout is.
In all my years of coding, I've never run a repository - for CVS or SVN. Its overkill, unneccesary, and beyond the scope of the original poster. Your anecdote fits a different description: Someone trying to take on more than they should.
Hmm... isn't that how we learn? I don't claim to be proficient in CVS: haven't done much more than commits and checkouts (and somehow miraculously got a local repository to work), haven't set up remote access to the repository (which is another step I should take), and doesn't know how to directly interface via the command line (which, of course, should be learned eventually).

I'm not sure what you mean by "I've never run a repository": does that mean for your own pet projects that you don't have a server for, you simple don't use change control for that project?
Roja
Tutorials Group
Posts: 2692
Joined: Sun Jan 04, 2004 10:30 pm

Post by Roja »

Ambush Commander wrote:
Stop there. If someone can't figure out the CVS client, they shouldnt be trying to run a repository yet.

Its that simple. If they can however, then there are plenty of options that allow them to run SVN just as easily as CVS - as long as you leave the repository to someone more experienced.
Erm, I have a repository running locally for CVS. I use ToirtoiseCVS as a frontend to CVS. I know what a commit and a checkout is.
And my point was the example you gave was bogus. I'm extremely experienced with CVS and SVN, yet have never needed to setup a repository. Your exact quote was: " it wouldn't be possible to directly install a subversion server on your computer (unlike PHP, Apache etc.) and therefore I couldn't use it. "

You can use Subversion. You can use it on your computer. You can use it to manage small, medium, large, and enterprise class projects. None of that requires you setting up a repository. I know, because I've done almost all of the above. :)

The argument wasn't with whether you personally were experienced. The argument was that a novice shouldn't say "I cant use subversion unless I can setup a repository". But extending it - neither should you!
Ambush Commander wrote:
In all my years of coding, I've never run a repository - for CVS or SVN. Its overkill, unneccesary, and beyond the scope of the original poster. Your anecdote fits a different description: Someone trying to take on more than they should.
Hmm... isn't that how we learn? I don't claim to be proficient in CVS: haven't done much more than commits and checkouts (and somehow miraculously got a local repository to work), haven't set up remote access to the repository (which is another step I should take), and doesn't know how to directly interface via the command line (which, of course, should be learned eventually).
Not nitpicking, but perhaps there is a correlation. I've become proficient in CVS by focusing on doing what I need to do - using the client. You've not become proficient, but you run both the client and setup a repository. Which ended up better in the end?
Ambush Commander wrote: I'm not sure what you mean by "I've never run a repository": does that mean for your own pet projects that you don't have a server for, you simple don't use change control for that project?
On the contrary, almost every project I do uses change control. I'm a huge advocate of it.

However, I've only once setup a repository - and it wasn't for Subversion.

I'm repeating myself, but your point that without the repository, you can't use it is simply wrong. I've used CVS and SVN for years, and I've never setup a SVN repository. Clearly, its possible to use it to great advantage without that requirement being met. (I'm also ignoring the fact that that requirement can be met in half a dozen ways other than installing it on your home PC).

The original poster wanted to know why SVN was better than CVS. I've explained in detail why. Each of your posts has been a "Yeah, but it sucks because..." post, and frankly, they've all been inaccurate.

Each point has been wrong:

- I can't use subversion because I run windows: Wrong, you can use the client
- I don't have a server to work with. Wrong, you can buy it, get it for free, or run one at home.
- I can't install one at home, on a windows system: Wrong, you could on VMWare, or setup a second system
- I can't learn to use SVN without using a server, on a windows system, at home.

I sincerely hope you see the pattern here. You can do ALL of the above, or not. You can choose not to do ANY of the above. But on a thread specifically asking how and why subversion is better than CVS, its getting redundant to hear reasons why you choose not to.

I've enjoyed CVS and SVN for years, and can speak directly to how to use them, why SVN is better, and what the advantages are.

If you don't want to use SVN for ANY reason, fine, I respect that. Just please - stop hijacking the thread to make excuses not to. This thread was not titled "Reasons why Ambush Commander chooses not to use Subversion".
User avatar
infolock
DevNet Resident
Posts: 1708
Joined: Wed Sep 25, 2002 7:47 pm

Post by infolock »

we use subversion, and yes you are right ambush, the repository cannot be contained within windows. linux is your best choice for this. but if you aren't gonna use linux, then i would recommend Zend Studio's CVS tool. However, subversion rules and I recommend it above all...
timvw
DevNet Master
Posts: 4897
Joined: Mon Jan 19, 2004 11:11 pm
Location: Leuven, Belgium

Post by timvw »

If you are using w2k or xp you might want to read http://excastle.com/blog/archive/2005/05/31/1048.aspx to setup a SVN server on windows ;)
Deemo
Forum Contributor
Posts: 418
Joined: Sun Jan 18, 2004 11:48 am
Location: Washington DC

Post by Deemo »

thats alot for the link timvw, that worked perfectly, and now i have a nice subversion server running :)


Thanks alot for the help everyone, i greatly appreciate it
User avatar
Ambush Commander
DevNet Master
Posts: 3698
Joined: Mon Oct 25, 2004 9:29 pm
Location: New Jersey, US

Post by Ambush Commander »

If you don't want to use SVN for ANY reason, fine, I respect that. Just please - stop hijacking the thread to make excuses not to. This thread was not titled "Reasons why Ambush Commander chooses not to use Subversion".
Sorry.
If you are using w2k or xp you might want to read http://excastle.com/blog/archive/2005/05/31/1048.aspx to setup a SVN server on windows
Thank you for the link!
Post Reply