queued, thanks > On Nov 8, 2019, at 23:51, Yuya Nishihara <y...@tcha.org> wrote: > > # HG changeset patch > # User Yuya Nishihara <y...@tcha.org> > # Date 1573271756 -32400 > # Sat Nov 09 12:55:56 2019 +0900 > # Node ID 295870673214e9b41425066559402618893ccd36 > # Parent 3e4a888ce13ae2737ef1facc3d1b00ed6f295e1a > bookmarks: accept explicit -r 'wdir()' when adding new bookmarks (issue6218) > > Even though the bookmark semantics can't be fully encoded to the virtual > working changeset idea, the active bookmark can be considered a bookmark > of the working revision. > > Before, 'tgt' was None, and changes=[(bm, None)] means deleting a bookmark > named 'bm'. > > diff --git a/mercurial/bookmarks.py b/mercurial/bookmarks.py > --- a/mercurial/bookmarks.py > +++ b/mercurial/bookmarks.py > @@ -958,8 +958,13 @@ def addbookmarks(repo, tr, names, rev=No > if rev: > repo = scmutil.unhidehashlikerevs(repo, [rev], b'nowarn') > > - ctx = scmutil.revsingle(repo, rev) > + ctx = scmutil.revsingle(repo, rev, None) > + # bookmarking wdir means creating a bookmark on p1 and activating it > + activatenew = not inactive and ctx.rev() is None > + if ctx.node() is None: > + ctx = ctx.p1() > tgt = ctx.node() > + assert tgt > > for mark in names: > mark = checkformat(repo, mark) > @@ -984,7 +989,7 @@ def addbookmarks(repo, tr, names, rev=No > repo.ui.warn(b"(%s)\n" % msg) > > marks.applychanges(repo, tr, changes) > - if not inactive and cur == marks[newact] and not rev: > + if activatenew and cur == marks[newact]: > activate(repo, newact) > elif cur != tgt and newact == repo._activebookmark: > deactivate(repo) > diff --git a/tests/test-bookmarks.t b/tests/test-bookmarks.t > --- a/tests/test-bookmarks.t > +++ b/tests/test-bookmarks.t > @@ -619,6 +619,16 @@ deactivate current 'Z', but also add 'Y' > x y 2:db815d6d32e6 > $ hg bookmark Z > > +bookmark wdir to activate it (issue6218) > + > + $ hg bookmark -d Z > + $ hg bookmark -r 'wdir()' Z > + $ hg bookmark -l > + X2 1:925d80f479bb > + Y 2:db815d6d32e6 > + * Z 2:db815d6d32e6 > + x y 2:db815d6d32e6 > + > test clone > > $ hg bookmark -r 2 -i @ > _______________________________________________ > Mercurial-devel mailing list > Mercurial-devel@mercurial-scm.org > https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
_______________________________________________ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel