[Top][All Lists]

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

Re: [Monotone-devel] Command design and naming?

From: William Uther
Subject: Re: [Monotone-devel] Command design and naming?
Date: Sat, 24 Feb 2007 00:51:41 +1100


I've re-ordered your email to respond in order of importance. :)

Quite honestly, I disagree.  It took me about 10 minutes to read and
understand that you do your work against a local repository, then
transfer changes back and forth between your local repository and a
remote one.  It took me a blink of an eye to see the elegance with
having a local copy of the history of what I was working on.  All you
have to do is read the manual (not the man page, which has recently
been removed).

I agree that monotone is orthogonal and minimalist. I'm dealing with a group of people here who have spent 10 minutes less than you understanding monotone. They know the centralised model. They're mostly working in a centralised setting. They only want to deal with the decentralised model when they're actually doing decentralised stuff. Monotone is close to supporting that, and if it can do so _without losing much elegance_, I think that is worthwhile.

The current commands are not just a problem for people switching. I think they make me type about three times as much as I need to in many situations. A small amount of syntactic sugar in the right places is a good thing.

It would be very possible to do what I'm suggesting with scripts. But I think that other people are going to have the same issue(s). I think many users are going to give up on monotone before they write themselves scripts, which is sad, but I think accurate. I would like to avoid that.

I'm noticing that you're very bent on specific branches, when the
argument to pull is a pattern and represents a set of branches, not
just one.  I know that that you initially think that you only need
that particular branch, but then someone is branching from that
branch, and you wanna follow that as well, and so on.

This is a side issue, but no I'm not amazingly bent on specific branches. I had simply noted that if you commit in one branch, you don't expect your work in another branch to be synced. The syncing itself isn't an issue. But once you've synced, you really should merge, and I don't want to have to think about merging a branch that I wasn't in the process of committing.

This is a very different use case to if you've explicitly synced. Then you expect to be pushing a whole set of branches.

I'm skipping everything about option ii, since you said yourself that
it was overkill, and I agree.

Um, I think I said option iii was overkill and option ii was the one I preferred. My option ii was very like what you suggested, but I used the term 'remote' instead of 'super'. It is what I have just finished implementing. Test cases tomorrow I think...

From the tone of your email I suspect that my email volume is annoying you. I would like to avoid annoying people if possible. Having said that, Monotone is a very nice VCS, but it hits people transferring from other systems with a fair few gotchas. I have also used a bunch of systems. I think monotone is great. I would like to try and smooth out some of the annoying little catches. I think many people here have been using it for so long they've forgotten the new user experience.

If you think I'm too verbose, feel free to ignore me :). There aren't that many patches I want to write, so volume should go down soon. :)

Be well,

Will         :-}

reply via email to

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