Re: CVS vs VSS
Re: CVS vs VSS
- Subject: Re: CVS vs VSS
- From: Chris Hanson <email@hidden>
- Date: Sat, 14 Feb 2004 14:12:53 -0500
On Feb 13, 2004, at 10:56 PM, Lotsa Cabo wrote:
I'm hoping someone can give me an easy "1, 2, 3" answer. I have been
using Visual Source Safe (aka "VSS") on the M$ platform for many
years. What source control options are available for XCode that a
newbie developer would able to use?
CVS is freely available and easy to use. However, it's not without its
problems:
http://peterb.telerama.com/weblog/archives/000010.html
In fact, it's largely with its problems. It's in wide use because it's
free and it's in wide use. (Yes, I know what I just said, I meant it.)
Perforce isn't free in the same way as CVS but is very good. But don't
bother even trying the Xcode integration right now, it may as well not
exist, use the command line or the graphical Perforce client instead.
http://www.perforce.com/
Perforce is $800 or so per seat for commercial development, and runs
everywhere (Unix, Windows, classic Mac OS, Amiga...).
Generally speaking, it is a file-based system and virtually any
computer can contain the "database" since it is just a collection of
files. There is an admin utility that the admin (generally the person
that created the database) uses to manipulate users, passwords,
rights, etc. After that, Visual Studio users simply select "Open
From..." and browse to the UNC or path where the VSS database files
are stored.
You forgot the part where it corrupts your repository at the drop of a
hat, or the part where it's horrendously slow. :)
1. What systems incorporate into XCode and will allow a proper check
in-check out methodology?
The only systems integrated in Xcode are CVS and Perforce. (And like I
said, the Perforce integration may as well not exist.)
CVS uses a proper edit-modify-commit methodology. Perforce also uses
an edit-modify-commit methodology but you have to tell it you're going
to edit first; this doesn't perform a transaction with the server, but
it does add write permission to the file you're editing.
All modern tools are built around edit-modify-commit. You're not going
to find many modern tools built around the old exclusive locking (check
out-check in) model; the only one I can think of off the top of my head
is SourceGear Vault.
Well, you can do it in Perforce on a file-by-file basis, but it's
really intended for file formats that can't support merging (like most
binary files), not for general use over the entire repository.
2. Are any of these file-based, like VSS?
CVS can use a filesystem-based repository or a repository via one of
two server protocols. Perforce is entirely server-based.
Filesystem-based version control systems have serious performance and
integrity drawbacks, and nobody should be using them over a network.
Network filesystems are simply too unreliable.
I use some filesystem-based CVS repositories but only for personal
projects on my laptop, where the repository and code are on the same
machine.
3. I am not very comfortable using any publicly hosted solutions, like
SourceForge.Net. What source control solutions allow local access to
my network only?
If you set up a server on your local network, you can restrict it
arbitrarily. You seem to be confused though; SourceForge.net isn't a
version control system itself. SourceForge.net provides access to a
CVS-based version control system for Open Source projects.
Okay, I don't know what I don't know. So, any advice would be
appreciated.
I'd say you should look at both Perforce and CVS. And go with Perforce
if you can afford it.
There are other solutions out now, including Subversion and Arch. I
haven't used them and they're still in development, so I'm not really
willing to trust my source code to them.
-- Chris
--
Chris Hanson <email@hidden>
bDistributed.com, Inc.
Outsourcing Vendor Evaluation
Custom Mac OS X Development
Cocoa Developer Training
_______________________________________________
xcode-users mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/xcode-users
Do not post admin requests to the list. They will be ignored.
References: | |
| >CVS vs VSS (From: Lotsa Cabo <email@hidden>) |