[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Monotone-devel] Branches in git and monotone
From: |
Julio M. Merino Vidal |
Subject: |
[Monotone-devel] Branches in git and monotone |
Date: |
Sun, 20 May 2007 14:05:51 +0200 |
Hi,
Let's see if I understood it correctly as regards how branches are
represented in both git and monotone:
- git represents a branch by storing its head's identifier. That is,
a branch is stored on disk by remembering the top-most revision it
"contains". No other information is needed (aside from the ancestry
tree that hangs from that branch, that is).
- monotone attaches a branch cert to all the revisions that "explicitly"
belong to a branch.
git's approach seems simpler and, at the same time, more flexible.
It allows the user to define custom branch names and change those
names at any time, given that they are local (which also prevents
name clashes among different databases). It also allows to "push"
local branches against other ones, forgetting that that local branch
ever existed. monotone, OTOH, doesn't allow this: any branch easily
ends up being public, and name changes are not possible.
However, git's approach does not allow the representation of multiple
heads within a branch, but changing it to allow this could be trivial
(just attach multiple revids to a branch name).
What I'm wondering is... can monotone's approach represent some
situation that git cannot?
Thank you!
PS: I don't know what the "policy branches" (or whatever they are
called) will change in this area. Maybe everything (making it more
git-like), and then my question is pointless now ;-)
--
Julio M. Merino Vidal <address@hidden>
- [Monotone-devel] Branches in git and monotone,
Julio M. Merino Vidal <=