On 16.07.2012 14:11, Bert Huijben wrote:
> On the Berlin hackathon the suggestion was raised that it might help that we
> standardize a new 'svn:branch' property to give tooling a hint on what
> directories are branches and which aren't. To make sure we don't forget
> about this idea I just drop this on the list with the information I have. I
> hope others can extend this proposal with their own ideas.
> Client tools like TortoiseSVN, Subclipse, AnkhSVN could really use some
> standardized hint to suggest better defaults to the user.
This idea looks to me very much like a solution looking for a problem.
First of all: which problem, specifically, are you trying to solve? And
how can this problem not be solved today by inspecting svn:mergeinfo?
Regardless of what we tell users, there are a few things that we have to
understand about Subversion's data model before we proceed with any
discussion of branch-foo-like features:
* Directories are not branches. /Copies/ of nodes (not only
directories) represent branch points, and the difference is significant.
* Subversion does not have named branches. Paths are only incidentally
useful for hinting at branch identity, but are far from definitive,
as Julian will happily tell you at some length. :)
* Even if, for the sake of argument, we assume that directory names
can be used equivalently to branch names, you still have to take
into account that the /contents/ of a directory can have a
completely different branch history than the directory itself.
Incidentally, the above points are the reason why a mapping from
Subversion's current data model to one where branches are top-level,
first-class objects in a separate namespace is very hard and may prove
to be impossible. The idea of an svn:branch property seems to assume
that such a mapping is possible; but I would like to see something more
rigorous than "client tools could really use some hint" before believing
that such a property would solve any case that cannot be solved by
information available to clients today.
Certified & Supported Apache Subversion Downloads:
Received on 2012-07-16 19:09:09 CEST