Re: CVS vs VSS
Re: CVS vs VSS
- Subject: Re: CVS vs VSS
- From: Chuck Soper <email@hidden>
- Date: Sat, 14 Feb 2004 18:23:54 -0800
At 2:12 PM -0500 2/14/04, Chris Hanson wrote:
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.)
That's a great link. Thanks.
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.
I use a combination of p4v (the Perforce GUI), p4 (the command line
client), the Xcode Perforce interface. Earlier today I submitted four
bugs/feature requests concerning Xcode and Perforce (and SCMs in
general). I can't imagine using Xcode only to communicate with the
Perforce depot (i.e. repository), in fact, it's not possible.
Xcode/Perforce can't deal with bundles (nibs, etc.) or change lists
(a Perforce feature). Xcode/Perforce is very useful to see in the
project window what files are opened for edit or add. It's also
convenient to open a file for edit.
I think the biggest shortcoming for SCM support in Xcode is the
attempt to treat all SCMs generically. The Xcode 1.1 Release Notes
mention a new CVS feature: "Basic support for 'cvs annotate' has been
added. Currently you can only act on the checked out file and the raw
results are placed in a new untitled window. No Perforce support as
of yet since Perforce doesn't have a comparable command." The only
problem is that Perforce does have a command named "annotate". I
don't know if it's comparable to CVS's annotate. THIS is getting
confusing...
Instead of having an SCM menu in the menu bar, why not name the menu
CVS or Perforce and allow menu items and terminology to be tailored
to the particular SCM?
Concerning Microsoft's Visual SourceSafe..
You forgot the part where it (VSS) corrupts your repository at the
drop of a hat, or the part where it's horrendously slow. :)
Hey, I've had that experience, too (corrupting the repository). It
froze integrations for group of twenty-five for three days! MS Visual
SourceSafe might be okay for small groups/projects.
And what version control tool do you think Microsoft uses? It's a
well known (accepted) industry rumor that MS uses a derivative of
Perforce for huge projects like Windows 2000.
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.
Here's a description of Perforce change list's:
http://www.perforce.com/perforce/doc.032/manuals/p4guide/07_changelists.html#1040368
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.
I agree yet, CVS could "cost" more than Perforce if you intend to do branches.
Chuck
_______________________________________________
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.