Jump to content
  • Advertisement
Sign in to follow this  
paulecoyote

Subversion Versus CVS

This topic is 4868 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi all, At work we are thinking about standardising source control. At the moment Windows only development will stay with SourceSafe at least for the moment. But our unix bods and other parts of the company use either nothing [eek] (archives of milestone builds), or CVS. I'm aware that because Subversion does not take in to account Windows /IIS need for filenames (.svn not being very friendly) for webprojects that special builds are around for tools that use _svn for the svn directories instead - but that's is still a royal pain in the bottom and will not convince any Windows developers around here to switch from Source Safe. The excellent Ankh svn integration for Visual Studio makes it a bit more palitable I think, but still unless you have any decent arguments & solutions (yes we've all lost stuff in source safe) then just leave source safe alone in the replies [wink]. Yes I know about Tortoise explorer tools and the aforementioned Ankh, but they'll be more interested in having something with the same seemless integration with Visual Studio... something because of the webprojects thing doesn't seem very supported. Now I've personally being experimenting with Subversion and apart from the webprojects thing it seems to be pretty good, but I know that CVS has been around for a long time and is well established. What I'm really looking for from you guys is links to web-resources and personal experience of why you chose CVS over Subversion or visa versa, not necessarily from a Windows perspective but also a Unix, Sun, Linux and Mac perspective too. Some useful things I can draw on to make a recommendation.

Share this post


Link to post
Share on other sites
Advertisement
I have recently changed from CVS to SVN and I'm not thinking about going back. Main reason to switch for me was Subversion being able to move files without losing the file history. (Although I have not used the feature much for now).

Subversion stores a working copy locally (so not only the file dates), which takes up more space on your HDD (disadvantage), but that really speeds up things sometimes (advantage IMO). And I like the revision numbering better: per repository, not per file. Now I use this number to identify my builds, no obscure build numbers anymore.
I use RapidSVN to manage the stuff. I don't like Visual Studio, so I have no need for integration and this tool works good for me on both Windows and Linux (and Mac too I suppose).

For me SVN is CVS and more. I haven't used SourceSafe myself, but from what I've heard it shouldn't be any problem to convice people to stop using it :-).

P.S. Why is a directory named .svn a problem?

Share this post


Link to post
Share on other sites
Quote:
Original post by DaBonoP.S. Why is a directory named .svn a problem?

Try creating it or browsing it with windows explorer ;)

Share this post


Link to post
Share on other sites
Quote:
Original post by mandrav
Quote:
Original post by DaBonoP.S. Why is a directory named .svn a problem?

Try creating it or browsing it with windows explorer ;)


Indeed .svn is just an extension to windows, windows likes to have a filename before an extension.

Share this post


Link to post
Share on other sites
Quote:
Original post by paulecoyote
Indeed .svn is just an extension to windows, windows likes to have a filename before an extension.


But that only applies to creating this directory by hand (which you shouldn't need to do anyway).

Browsing the .svn directories is certainly possible using the explorer.

Share this post


Link to post
Share on other sites
Quote:
Original post by Erluk
Quote:
Original post by paulecoyote
Indeed .svn is just an extension to windows, windows likes to have a filename before an extension.


But that only applies to creating this directory by hand (which you shouldn't need to do anyway).

Browsing the .svn directories is certainly possible using the explorer.


That does not change the fact that it screws up webprojects because of the nameless .svn thing.

Anyway, rather then concentrating on filenames... CVS versus Subversion, why did you choose one over the other?

Share this post


Link to post
Share on other sites
I haven't used subversion, but it has version numbers per-commit as opposed to per-file, which I think is way better.

tj963

Share this post


Link to post
Share on other sites
Quote:
CVS versus Subversion, why did you choose one over the other?


Atomic operations, man. Gotta be atomic.

Share this post


Link to post
Share on other sites
There is a version of tortoiseSVN (subversion client), that uses _svn instead of .svn, it is made specificly to work around that visual studio bug.

Share this post


Link to post
Share on other sites
I've been using SVN at work for over a year now, and it is excellent. The single biggest improvement over CVS is that all commits are atomic - that is, they are single, transactional entities. If something goes wrong with your commit, the SVN repository is safe - as opposed to the hours I've spent fixing up a busy, multi-user CVS repository after such errors. Repository-wide version numbers are good for clarity. File moving and copying (with tagging) can be performed within SVN, and it's smart enough when you copy to a new trunk to only duplicate storage space for deltas on the changed file. Binary file handling is far and above better than CVS; CVS has to store the whole file, SVN can often store a binary delta. At work, we use it for VS.NET web projects all the time - with the _svn version of TortoiseSVN. (Incidentally, this is a VS problem, not IIS or Explorer - websites work fine with .svn folders on the webserver).

Finally, I like the command-line controls more - but that's a personal choice. I did find it really easy to write a script that automatically updates various websites from SVN, onto a staging server, and then calls Nant to build them - but I'm sure that CVS could be made to do the same.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!