Hi - I am looking for a source control system to use for our outsourced development team. We are currently using Microsoft Visual Source Safe and I have been looking at SVN and Bzr. How do they stack up? Any experience? What are the differences?
Hi - I am looking for a source control system to use for our outsourced development team. We are currently using Microsoft Visual Source Safe and I have been looking at SVN and Bzr. How do they stack up? Any experience? What are the differences?
Answers
Add AnswerIt depends on what you actually need. Things to ask:
1) Do you need web-access?
2) Do you need ssh access?
3) Do you need IDE integration?
CVS is the oldest and has been around for the longest - it is built on top of RCS. Subversion uses an RDBMS at the back end.
So, provide some more info on what your needs are. I've used CVS and SVN and can offer some thoughts.
Good questions.
1) Web-access: Yes - desired, but not required.
2) SSH: Well, not sure I follow. I could use a CLI to access the source code system over SSH? Yes, that would be required too.
3) I'm looking to rally around Eclipse, but I could use just vi and make files.
Basically, I need a system that is flexible to allow our team to use tools they are comfortable with, whether Eclipse or vi. They need to be able to check-in/check-out code into a repository that I control.
HTH.
Well, eclipse can use both SVN and CVS. I've personally found CVS easy to set up and use for smaller projects. You can access it from the command line, and there is built in eclipse support.
SVN is newer, and more robust. You can easily get a free eclipse plugin for that too.
SVN has several plugins to windows explorer, etc. so you can use tortiseSVN or something and not be bound to your IDE, should you wish to use vi (or emacs!) and make files.
svn much more easy to setup and have no cost to maintenance(server and clien part),
many peoples migrate from CVS to SVN
I think SVN will be good choose
svn of course
One thing to note about CVS is that it cannot track those renamed or deleted files, so you might consider SVN as it supports these CVS incapabilities. And, its more robust and supported by many IDEs.
In general there currently are two mainstream types of versioning systems.
1) "Classic" centralized versioning systems, like CVS, Subversion and so on - when you're developing a closed source project with your team, and your changes are quite straightforward without creating many branches and merging them later, then SVN is just the best thing to look at. In general SVN was kind of a try to make a 'good CVS', so there's no point to look at cvs now - it's just the old thing.
2) If you want to make your repository more flexible and use kind of really modern things you could take a look at modern *distributed* versioning systems like Mercurial or Git. Both of them are very cool and popular things. If you're looking for a pythonic one (but still fast) take a look at Mercurial - Netbeans and OpenJDK projects are using it as their vcs. From other side git written on C, and is used as a vcs for the Linux kernel (nothing to add:)
at my experience, CVS required user as system user, so user which want to use CVS, have to registered as user in system. But with SVN, it is not required
subversion is used in my company.
svn
Share your knowledge