[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Strategies for projects/branches layout

From: William Nagel <bill_at_stagelogic.com>
Date: 2005-11-07 22:20:19 CET

On Nov 7, 2005, at 3:33 PM, Jesse Erlbaum wrote:

> Hi Ryan --
>> See, and I learned version control on Subversion, and now that I'm
>> trying to participate in some open-source projects that use CVS, I'm
>> totally baffled by CVS's non-directory-ish treatment of braches and
>> tags. :-) Gonna have to find me a CVS book.
> "Open Source Development with CVS"
> by Karl Fogel (CoriolisOpen Press)
>> Well, you can forget about that, because Subversion doesn't
>> work like
>> that. ;-)
> I noticed!
> In this situation, svn seems to force the developer to make arbitrary
> decisions on very meaningless topics. A "branches" directory? You
> mean
> I can't have branches without a directory? The feature just goes
> away?
> That doesn't sound right to me.

The "branches" directory is really just a convention. It's a
suggested place to put copies made for branching purposes. If you
were doing testing branches and release branches, it might make more
sense to have "testing" and "releases" instead of a single "branches"
directory. It may be a little confusing initially if you're used to
the CVS-way, but it really is a powerful way of doing things.

Also, nothing "goes away" if you don't have a branches directory.
You're still able to make cheap copies from any location to any other
location. You're also free to create a branches directory at any
point in time, not just when you create the directory.

> Devising a directory taxonomy for this purpose seems contrived. The
> capability to branch and tag are present all the time -- not just when
> you create a particular directory for the purpose. Features should
> not
> go away just because I failed to create a "magic directory". IMHO.
> (And what if I decide I need to tag something which I didn't plan on
> tagging when the project started? Am I just screwed?)

See above. The features are always there, even if you don't have
directories named /branches and /tags. There's also nothing magical
about those directories, they're just conventions.

> And, let me say this: I would like to hear the arguments in favor of
> the Subversion way. I am a newbie, and suspect that when I learn "Tao
> Svn" these questions will appear as they are: The result of the
> switch
> between two similar but philosophically divergent systems.

If you'll excuse a bit of self-promotion, you might want to take a
look at my book "Subversion Version Control". I discuss "the
Subversion way" in great depth, as well as ways you can integrate
Subversion into different development styles.

Here's a link: http://www.phptr.com/title/0131855182
It was released under the Open Publication License, so you can
download a pdf of the book if you'd like.

Of course, if you like if feel free to buy a hardcopy ;-)

>> If the five development efforts are distinct, then you'll want to be
>> able to branch and tag them separately, so your layout 1.
>> above seems
>> best.
> Understood, and certainly the solution I've been moving towards.
> Question: How does this effect the command line for checkout? For
> that
> matter, what is the purpose of the "project" in the follow example
> checkout command?:
> svn checkout file:///path/to/repos/trunk project
> Is that just the name of the directory into which the files in the
> selected repository path will be checked out?

Yes, you're exactly right. The contents of the directory trunk will
be checked out into a local working copy directory named project. If
you omit the word project, then you'll check out the directory trunk
with a local working copy name of trunk.


> Warmest regards,
> -Jesse-
> --
> Jesse Erlbaum
> The Erlbaum Group
> jesse@erlbaum.net
> Phone: 212-684-6161
> Fax: 212-684-6226
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: users-help@subversion.tigris.org

To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Mon Nov 7 22:35:51 2005

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.