monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Monotone-devel] thought on hierarchical branches


From: Nathaniel Smith
Subject: [Monotone-devel] thought on hierarchical branches
Date: Thu, 17 Aug 2006 03:56:20 -0700
User-agent: Mutt/1.5.12-2006-07-14

A thought that I had today, that I wanted to write down in a more
permanent place so I don't forget:

I've been rolling around ideas in my head recently for how the branch
namespace is organized in a versioned policy regime; the main
background reading for how this works is
  http://venge.net/monotone/wiki/VersionedPolicy
I.e., using a filesystem tree as a namespace.

In particular, I was sort of leaning towards saying that actual
branches should be leaves -- if we follow the scheme we use now, we'd
have branches
  monotone
  monotone/foo
  monotone/bar
etc., and that seems confusing when these are actually directories in
a filesystem.  So, I was leaning towards something more like svn
  trunk
  branch/foo
etc.

I realized today this isn't so good, though.  What I ran into was, I'm
working off on this branch, .roster-no-hash, to reorganize some of the
storage system.  It's basically working, but I realized that it might
turn out cleaner if I did some refactoring, and, having begun to
"think in branches" more, I immediately thought "hmm, I dunno if
that'll work, let's put it on a branch".

The problem with a trunk-next-to-branches scheme is that there's
nowhere to put branches-of-branches.  This branch off mainline now has
two branches off it, and I'll probably end up putting one back to the
first branch, then pull the result into the second branch, etc...
branches-of-branches are a deeply Right thing to want, and I wonder
how workflow in other systems suffers from not having any natural way
to talk about this.

So, now I'm leaning very much back towards having branch names that
are not leaves in the namespace -- because this hierarchical nesting
is more expressive in this case.  Even if it does really confuse
everyone used to svn/darcs/bzr/hg/..., with their branches as leaf
URLs :-).

Unless anyone has any ideas on a less confusing way to accomplish this
goal?

-- Nathaniel

-- 
Eternity is very long, especially towards the end.
  -- Woody Allen




reply via email to

[Prev in Thread] Current Thread [Next in Thread]