Mercurial > public > mercurial-scm > hg
diff mercurial/bookmarks.py @ 14266:89e7d35e0ef0 stable
fix bookmarks rollback behavior
Before this patch undo.bookmarks was created on bookmarks write and
not with other transaction-related files. There were two issues: first
is that if you have changed bookmarks few times after a transaction
happened, rollback will give you a state which can point to
non-existing revision. Second is that if you have not changed
bookmarks after a transaction, rollback will touch your state anyway.
This change also adds `localrepo._writejournal` method, which can be
used by other extensions to save their transaction-related backup in
right time.
author | Alexander Solovyov <alexander@solovyov.net> |
---|---|
date | Sun, 01 May 2011 13:07:00 +0200 |
parents | 71a96f6c205d |
children | a55a0045704c |
line wrap: on
line diff
--- a/mercurial/bookmarks.py Fri May 06 15:37:38 2011 +0300 +++ b/mercurial/bookmarks.py Sun May 01 13:07:00 2011 +0200 @@ -61,12 +61,6 @@ ''' refs = repo._bookmarks - try: - bms = repo.opener('bookmarks').read() - except IOError: - bms = '' - repo.opener('undo.bookmarks', 'w').write(bms) - if repo._bookmarkcurrent not in refs: setcurrent(repo, None) for mark in refs.keys():