Deleting bookmarks on the server

Kevin Bullock kbullock+mercurial at ringworld.org
Mon Apr 29 03:24:57 UTC 2013


On 27 Apr 2013, at 10:42 PM, Stephen Lee wrote:

> Hi All,
>  
> I'm planning to write an extension that will allow bookmarks to be deleted on a server

You know that you can delete bookmarks on a remote with push -B, right?

> and have the deletion shared with clients.
> This would work by setting the bookmark to point to null, and filtering these from the UI.  This is similar to the way non-local tag deletion works.
> I can see two problems with this:
>  * it would not be possible to bookmark null which is a minor annoyance when creating the @ bookmark on an empty repo
>  * deleting a bookmark from the server that has been moved on the client cannot be detected as a divergence

The main problem here is that bookmarks have no history (by design), so there's really no way you can design a sensical distributed synchronization protocol for them.

> The reason I want this behaviour is that we are using bookmarks to track developer's work-in-progress in the 'awaiting review' repo on the server - but once the code has passed review and is merged into the baseline the bookmark is not needed.  We could just leave them, but deleting them makes it easier to see what still needs reviewing.

This is really where revsets shine: hg log -r 'bookmark() - ::mainline'

pacem in terris / мир / शान्ति / ‎‫سَلاَم‬ / 平和
Kevin R. Bullock




More information about the Mercurial mailing list