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

Re: Emacs and Monotone problems

Ludovic Brenta <ludovic@ludovic-brenta.org> writes:

> xavier grave wrote:
>>> Ok. One issue; the mtn branch is named 'dvc.main' (with a devel branch
>>> of 'dvc.stephe'). I was planning to never distribute it, and short
> names
>>> are easier to deal with. Any objections?
>> Not for me.
> Since every TLA is overloaded already, I'd prefer more explicit names
> such as org.gnu.emacs.dvc{,.stephe}.


bzr doesn't require globally unique branch names, so we are free to pick

'org.gnu.emacs.dvc' might make it seem that DVC is a Gnu project (which
it's not). DVC is nominally portable to other emacsen, but I don't know
if anyone is testing that.

So I'll use 'org.emacs.dvc'. 

> It is quite easy to rename a branch before you publish it, i.e.
> mtn db execute "UPDATE revision_certs SET value = 'org.gnu.emacs.dvc'
> WHERE name='branch' AND value LIKE 'dvc.main%'"

Ah; I had not realized the SQL for renaming a branch would be that easy.

However, this branch is in several local dbs at my workplace, so
coordinating this change would be doable, but non-trivial.

I can maintain dvc.main in my databases, and propagate from dvc.main to
org.emacs.dvc for publishing in ada-france, in a special local database
that has both branches.

That requires selective syncing so both branches don't get pushed
everywhere, but I think it's workable, and easier than coordinating a
name change.

>> And if it's a problem for someone, he can always use a commit to rename
>> as he prefer ?
> No, once published and replicated across several databases, branch names
> never disappear and must be universally unique; that's perhaps the biggest
> problem with monotone.

Yes. Which is why the manual suggests names like 'org.gnu.emacs.dvc'; I
deliberately ignored that advice.

It would be nice if netsync supported branch name mapping; then I could
sync 'stephe.db dvc.main' with 'ada-france.db org.emacs.dvc', and
eliminate the special local database and propagate step. That seems like
it aught to be simple to implement; I'll put it on the mtn roadmap.

-- Stephe

Reply to: