##// END OF EJS Templates
share: wrap bmstore._writerepo for transaction sensitivity (issue4940)...
share: wrap bmstore._writerepo for transaction sensitivity (issue4940) 46dec89fe888 made 'bmstore.write()' transaction sensitive, to restore original bookmarks correctly at failure of a transaction. For example, shelve and unshelve imply steps below: before 46dec89fe888: 1. move active bookmark forward at internal rebasing 2. 'bmstore.write()' writes updated ones into .hg/bookmarks 3. rollback transaction to remove internal commits 4. restore updated bookmarks manually after 46dec89fe888: 1. move active bookmark forward at internal rebasing 2. 'bmstore.write()' doesn't write updated ones into .hg/bookmarks (these are written into .hg/bookmarks.pending, if external hook is spawn) 3. rollback transaction to remove internal commits 4. .hg/bookmarks should be clean, because it isn't changed while transaction running: see (2) above But if shelve or unshelve is executed in the repository created with "shared bookmarks" ("hg share -B"), this doesn't work as expected, because: - share extension makes 'bmstore.write()' write updated bookmarks into .hg/bookmarks of shared source repository regardless of transaction activity, and - intentional transaction failure at the end of shelve/unshelve doesn't restore already updated .hg/bookmarks of shared source This patch makes share extension wrap 'bmstore._writerepo()' instead of 'bmstore.write()', because the former is used to actually write bookmark changes out.

File last commit:

r25744:e78a80f8 default
r26933:a7eecd02 stable
Show More
test-bookmarks-strip.t
65 lines | 1007 B | text/troff | Tads3Lexer
/ tests / test-bookmarks-strip.t
Martin Geisler
tests: unify test-bookmarks-strip
r11864 $ echo "[extensions]" >> $HGRCPATH
$ echo "mq=" >> $HGRCPATH
$ hg init
$ echo qqq>qqq.txt
David Soria Parra
bookmarks: respect rollbacks dryrun parameter
r13307 rollback dry run without rollback information
$ hg rollback
no rollback information available
[1]
Martin Geisler
tests: unify test-bookmarks-strip
r11864 add file
$ hg add
adding qqq.txt
commit first revision
Martin Geisler
tests: remove unneeded -d flags...
r12156 $ hg ci -m 1
Martin Geisler
tests: unify test-bookmarks-strip
r11864
set bookmark
$ hg book test
$ echo www>>qqq.txt
commit second revision
Martin Geisler
tests: remove unneeded -d flags...
r12156 $ hg ci -m 2
Martin Geisler
tests: unify test-bookmarks-strip
r11864
set bookmark
$ hg book test2
timeless@mozdev.org
spelling: deactivates
r17497 update to -2 (deactivates the active bookmark)
Martin Geisler
tests: unify test-bookmarks-strip
r11864
$ hg update -r -2
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
Siddharth Agarwal
update: when deactivating a bookmark, print a message...
r21404 (leaving bookmark test2)
Martin Geisler
tests: unify test-bookmarks-strip
r11864
$ echo eee>>qqq.txt
commit new head
Martin Geisler
tests: remove unneeded -d flags...
r12156 $ hg ci -m 3
Martin Geisler
tests: unify test-bookmarks-strip
r11864 created new head
bookmarks updated?
$ hg book
Martin Geisler
tests: remove unneeded -d flags...
r12156 test 1:25e1ee7a0081
test2 1:25e1ee7a0081
Martin Geisler
tests: unify test-bookmarks-strip
r11864
strip to revision 1
Nicolas Dumazet
tests: use regular expressions instead of helpers
r11907 $ hg strip 1
Mads Kiilerich
tests: remove redundant globs...
r12640 saved backup bundle to $TESTTMP/.hg/strip-backup/*-backup.hg (glob)
Martin Geisler
tests: unify test-bookmarks-strip
r11864
list bookmarks
$ hg book
Augie Fackler
strip: move bookmarks to nearest ancestor rather than '.'...
r17264 test 0:5c9ad3787638
test2 0:5c9ad3787638