evolve: explicitly disable bookmark on evolve (issue4432)
We no longer leave the current bookmark active after an evolve, since it
is no longer pointing to the working directory.
--- a/hgext/evolve.py Tue Dec 23 14:29:16 2014 -0600
+++ b/hgext/evolve.py Tue Jan 27 16:07:57 2015 +0000
@@ -805,6 +805,10 @@
try:
if repo['.'].rev() != dest.rev():
merge.update(repo, dest, False, True, False)
+ if repo._bookmarkcurrent:
+ repo.ui.status(_("(leaving bookmark %s)\n") %
+ repo._bookmarkcurrent)
+ bookmarks.unsetcurrent(repo)
if keepbranch:
repo.dirstate.setbranch(orig.branch())
r = merge.graft(repo, orig, orig.p1(), ['local', 'graft'])
--- a/tests/test-evolve.t Tue Dec 23 14:29:16 2014 -0600
+++ b/tests/test-evolve.t Tue Jan 27 16:07:57 2015 +0000
@@ -859,3 +859,20 @@
nothing to evolve here
(2 troubled changesets, do you want --any ?)
[2]
+
+
+Evolve disables active bookmarks.
+
+ $ hg up 10
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ hg bookmark testbookmark
+ $ ls .hg/bookmarks*
+ .hg/bookmarks
+ .hg/bookmarks.current
+ $ hg evolve
+ move:[8] a2
+ atop:[10] a1__
+ (leaving bookmark testbookmark)
+ working directory is now at f37ed7a60f43
+ $ ls .hg/bookmarks*
+ .hg/bookmarks