bookmarks features

Chad Dombrova chadrik at gmail.com
Fri Aug 27 10:51:44 CDT 2010


On Aug 27, 2010, at 6:00 AM, Greg Ward wrote:

> On Thu, Aug 26, 2010 at 5:20 PM, Chad Dombrova <chadrik at gmail.com> wrote:
>> i'm planning on implementing some bookmark features that i need at my
>> workplace, but i thought i'd post the ideas here to see if they could be
>> improved or would be useful for integration into mercurial.  i've tried to
>> design them to be fairly generic and hopefully generally useful:
>> 
>> Bookmark Namespaces
>> ===================
>> use namespaces to avoid name clashes when pushing and pulling, and to inform
>> of a bookmark's source.
>> [bookmarks]
>> default-remote-namespace = remote
>> use-remote-namespaces = true
>> if ``bookmarks.use-remote-namespaces`` is enabled, when pulling bookmarks
>> the first name given to the remote path in [paths] (excluding default and
>> default-push) will be used for the namespace, otherwise
>> ``bookmarks.default-remote-namespace`` will be used.
>> the namespace separator defaults to '|' but can also be specified using
>> ``bookmarks.namespace-sep``
> 
> There are many nice things about git, and there are many things about
> git that annoy me.  I think the one that annoys me most is the whole
> business about "origin/" and "remote" branches and all that cruft.

i agree to a certain extent with this sentiment, but my main gripe is not the use of namespaces, its that the names are so confusing.  what's an origin?  what's a ref/remote?  already we're better off because we're not actually listing refs/remotes anywhere, we're simply prefixing the bookmarks with the name the user entered in [paths].  perhaps i could reframe the terminology to make it less git-like and more mercurial friendly?  does mercurial have a term for "other repository" other than remote?


> But if you *are* going to reimplement that (mis)feature, you might as
> well use the same separator: "/".

thus far there are no reserved or special characters in tag names, so i thought i'd use a less common character with the same visual effect in case others are already using '/', but i'm fine with '/' too.


> 
>> Shared Bookmarks
>> ================
>> allows shared repositories to use a single shared set of bookmarks.
>> configure by setting::
>> [bookmarks]
>> shared = true
>> shared repositories with ``bookmarks.shared`` enabled use the bookmarks
> 
> Sounds useful.  We don't use bookmarks, but we make heavy use of
> shared repos.  I bet if we did use bookmarks we would want this
> feature pretty soon.

yes, it's quite useful.  we also use a lot of shared repos here, and these 3 features,  are to build up a feature set for shared repos.  namespaces + shared bookmarks is a nice way for users of shared repositories to keep track of the work going on in other shares without having to worry about conflicts (plus namespaces are useful in a non-shared environment too).  add in the dirstate bookmarks feature, and you get a nice way for every user of a share to see where in the share history each repository is. 

-chad


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://selenic.com/pipermail/mercurial-devel/attachments/20100827/18a33524/attachment.htm>


More information about the Mercurial-devel mailing list