Patrick Smears wrote:
> Scott Palmer wrote:
> Why do you feel that it is a bad thing that this (virtual) tree has lots of
> data in it? Granted, if badly organised, it could become confusing to
> navigate - but then, Subversion has powerful ways of organising it. Or is
> there another aspect that concerns you more?
Even when properly organized, it's confusing to navigate. That's because
a. You have to remember a particular directory structure in the
repository that doesn't match your working copy. Typically, your
working copy would be in ~/projects/ThisProject/src, but in the
repository, it's http://svn/projects/ThisProject/trunk/src.
b. There's hidden meaning in the directories. If you're used to
just looking at the last directory name in the path (e.g., if that's how
your shell prompt is set, which is a very common approach), you can't
tell whether you're looking at a legitimate source tree or Subversion's
manifestation of a tag. Some of the directories are fulfilling the role
of directories; some aren't. That makes the concept of "directory" more
confusing, and breaks, at a conceptual level, the design principle that
a given object should only do one thing.
c. There's no guarantee of consistency or portability of knowledge.
If you've been working on ProjectA in your company that organizes
things one way, and then move to a different group that organizes things
another way, you're forced to learn a new directory structure. Even
worse, you can issue a cp command that you think is creating an
effective tag, and it can even work with no error message, but it's
still wrong - possibly very wrong.
d. There's no interactive help. If I forget the exact options and
order to the svn merge command, I can use svn help merge. But if I
forget exactly how to structure the tag operation, I can't say svn help
tag and have it tell me enough to determine the exact path to use as the
To unsubscribe, e-mail: firstname.lastname@example.org
For additional commands, e-mail: email@example.com
Received on Tue Sep 28 18:18:17 2004