##// END OF EJS Templates
manifest: add __nonzero__ method...
manifest: add __nonzero__ method This adds a __nonzero__ method to manifestdict. This isn't strictly necessary in the vanilla Mercurial implementation, since Python will handle nonzero checks by using __len__, but having it implemented here makes it easier for alternative implementations to implement __nonzero__ and have them be plug-n-play with the normal implementation.

File last commit:

r28830:a5009789 default
r30331:b19291e5 default
Show More
test-bookmarks.t
897 lines | 23.9 KiB | text/troff | Tads3Lexer
Martin Geisler
tests: unify test-bookmarks
r11861 $ hg init
no bookmarks
$ hg bookmarks
no bookmarks set
Yuya Nishihara
bookmarks: port to generic templater
r22776 $ hg bookmarks -Tjson
[
]
Martin Geisler
tests: unify test-bookmarks
r11861 bookmark rev -1
$ hg bookmark X
list bookmarks
$ hg bookmarks
* X -1:000000000000
list bookmarks with color
$ hg --config extensions.color= --config color.mode=ansi \
> bookmarks --color=always
Yuya Nishihara
bookmarks: split ui.write() so that it can be easily ported to formatter api...
r22775 \x1b[0;32m * \x1b[0m\x1b[0;32mX\x1b[0m\x1b[0;32m -1:000000000000\x1b[0m (esc)
Martin Geisler
tests: unify test-bookmarks
r11861
$ echo a > a
$ hg add a
$ hg commit -m 0
bookmark X moved to rev 0
$ hg bookmarks
* X 0:f7b1eb17ad24
look up bookmark
$ hg log -r X
changeset: 0:f7b1eb17ad24
David Soria Parra
templater: add bookmarks to templates and default output...
r13386 bookmark: X
Martin Geisler
tests: unify test-bookmarks
r11861 tag: tip
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: 0
Kevin Bullock
commands: 'hg bookmark NAME' should work even with ui.strict=True...
r18075 second bookmark for rev 0, command should work even with ui.strict on
Martin Geisler
tests: unify test-bookmarks
r11861
Kevin Bullock
commands: 'hg bookmark NAME' should work even with ui.strict=True...
r18075 $ hg --config ui.strict=1 bookmark X2
Martin Geisler
tests: unify test-bookmarks
r11861
bookmark rev -1 again
$ hg bookmark -r null Y
list bookmarks
$ hg bookmarks
David Soria Parra
bookmarks: make track.current=True default behaviour and remove option (BC)
r13416 X 0:f7b1eb17ad24
David Soria Parra
bookmarks: mark new bookmark as current if it points to the current dirstate...
r13448 * X2 0:f7b1eb17ad24
Martin Geisler
tests: unify test-bookmarks
r11861 Y -1:000000000000
$ echo b > b
$ hg add b
$ hg commit -m 1
Yuya Nishihara
bookmarks: port to generic templater
r22776 $ hg bookmarks -Tjson
[
{
"active": false,
"bookmark": "X",
"node": "f7b1eb17ad24730a1651fccd46c43826d1bbc2ac",
"rev": 0
},
{
"active": true,
"bookmark": "X2",
"node": "925d80f479bb026b0fb3deb27503780b13f74123",
"rev": 1
},
{
"active": false,
"bookmark": "Y",
"node": "0000000000000000000000000000000000000000",
"rev": -1
}
]
Augie Fackler
bookmarks: add revset for referencing bookmarks
r12714 bookmarks revset
$ hg log -r 'bookmark()'
David Soria Parra
bookmarks: make track.current=True default behaviour and remove option (BC)
r13416 changeset: 0:f7b1eb17ad24
David Soria Parra
templater: add bookmarks to templates and default output...
r13386 bookmark: X
Augie Fackler
bookmarks: add revset for referencing bookmarks
r12714 user: test
date: Thu Jan 01 00:00:00 1970 +0000
David Soria Parra
bookmarks: make track.current=True default behaviour and remove option (BC)
r13416 summary: 0
Augie Fackler
bookmarks: add revset for referencing bookmarks
r12714
David Soria Parra
bookmarks: mark new bookmark as current if it points to the current dirstate...
r13448 changeset: 1:925d80f479bb
bookmark: X2
tag: tip
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: 1
Augie Fackler
bookmarks: add revset for referencing bookmarks
r12714 $ hg log -r 'bookmark(Y)'
$ hg log -r 'bookmark(X2)'
David Soria Parra
bookmarks: mark new bookmark as current if it points to the current dirstate...
r13448 changeset: 1:925d80f479bb
David Soria Parra
templater: add bookmarks to templates and default output...
r13386 bookmark: X2
David Soria Parra
bookmarks: mark new bookmark as current if it points to the current dirstate...
r13448 tag: tip
Augie Fackler
bookmarks: add revset for referencing bookmarks
r12714 user: test
date: Thu Jan 01 00:00:00 1970 +0000
David Soria Parra
bookmarks: mark new bookmark as current if it points to the current dirstate...
r13448 summary: 1
Augie Fackler
bookmarks: add revset for referencing bookmarks
r12714
Simon King
revset: add pattern matching to 'bookmarks' revset expression
r16822 $ hg log -r 'bookmark("re:X")'
changeset: 0:f7b1eb17ad24
bookmark: X
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: 0
changeset: 1:925d80f479bb
bookmark: X2
tag: tip
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: 1
Michael O'Connor
revset: bookmark revset interprets 'literal:' prefix correctly (issue4329)
r22105 $ hg log -r 'bookmark("literal:X")'
changeset: 0:f7b1eb17ad24
bookmark: X
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: 0
Idan Kamara
tests: add tests for non-existant branch/tag/bookmark
r13925 $ hg log -r 'bookmark(unknown)'
FUJIWARA Katsunori
revset: raise RepoLookupError to make present() predicate continue the query...
r23978 abort: bookmark 'unknown' does not exist!
Idan Kamara
tests: add tests for non-existant branch/tag/bookmark
r13925 [255]
Yuya Nishihara
revset: strip off "literal:" prefix from bookmark not found error...
r26538 $ hg log -r 'bookmark("literal:unknown")'
abort: bookmark 'unknown' does not exist!
[255]
FUJIWARA Katsunori
revset: raise RepoLookupError to make present() predicate continue the query...
r23978 $ hg log -r 'bookmark("re:unknown")'
abort: no bookmarks exist that match 'unknown'!
[255]
$ hg log -r 'present(bookmark("literal:unknown"))'
$ hg log -r 'present(bookmark("re:unknown"))'
Idan Kamara
tests: add tests for non-existant branch/tag/bookmark
r13925
Patrick Mezard
Fix and unify transplant and bookmarks revsets doc registration
r12822 $ hg help revsets | grep 'bookmark('
"bookmark([name])"
Augie Fackler
bookmarks: add revset for referencing bookmarks
r12714
Martin Geisler
tests: unify test-bookmarks
r11861 bookmarks X and X2 moved to rev 1, Y at rev -1
$ hg bookmarks
David Soria Parra
bookmarks: make track.current=True default behaviour and remove option (BC)
r13416 X 0:f7b1eb17ad24
David Soria Parra
bookmarks: mark new bookmark as current if it points to the current dirstate...
r13448 * X2 1:925d80f479bb
Martin Geisler
tests: unify test-bookmarks
r11861 Y -1:000000000000
bookmark rev 0 again
$ hg bookmark -r 0 Z
David Soria Parra
bookmarks: make track.current=True default behaviour and remove option (BC)
r13416 $ hg update X
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
Stephen Lee
update: show message when a bookmark is activated by update...
r21503 (activating bookmark X)
Martin Geisler
tests: unify test-bookmarks
r11861 $ echo c > c
$ hg add c
$ hg commit -m 2
David Soria Parra
bookmarks: make track.current=True default behaviour and remove option (BC)
r13416 created new head
Martin Geisler
tests: unify test-bookmarks
r11861
David Soria Parra
bookmarks: make track.current=True default behaviour and remove option (BC)
r13416 bookmarks X moved to rev 2, Y at rev -1, Z at rev 0
Martin Geisler
tests: unify test-bookmarks
r11861
$ hg bookmarks
David Soria Parra
bookmarks: make track.current=True default behaviour and remove option (BC)
r13416 * X 2:db815d6d32e6
David Soria Parra
bookmarks: mark new bookmark as current if it points to the current dirstate...
r13448 X2 1:925d80f479bb
David Soria Parra
localrepo: sort hg bookmark output...
r13388 Y -1:000000000000
Martin Geisler
tests: unify test-bookmarks
r11861 Z 0:f7b1eb17ad24
rename nonexistent bookmark
$ hg bookmark -m A B
Idan Kamara
bookmarks: change error messages to match those given by 'hg tag' commands
r13911 abort: bookmark 'A' does not exist
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Martin Geisler
tests: unify test-bookmarks
r11861
rename to existent bookmark
$ hg bookmark -m X Y
Idan Kamara
bookmarks: change error messages to match those given by 'hg tag' commands
r13911 abort: bookmark 'Y' already exists (use -f to force)
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Martin Geisler
tests: unify test-bookmarks
r11861
force rename to existent bookmark
$ hg bookmark -f -m X Y
list bookmarks
$ hg bookmark
David Soria Parra
bookmarks: mark new bookmark as current if it points to the current dirstate...
r13448 X2 1:925d80f479bb
David Soria Parra
bookmarks: make track.current=True default behaviour and remove option (BC)
r13416 * Y 2:db815d6d32e6
Martin Geisler
tests: unify test-bookmarks
r11861 Z 0:f7b1eb17ad24
David Soria Parra
bookmarks: teach the -r option to use revsets
r17686 bookmarks from a revset
$ hg bookmark -r '.^1' REVSET
$ hg bookmark -r ':tip' TIP
Sean Farley
bookmarks: fix bug that activated a bookmark even with -r passed...
r19112 $ hg up -q TIP
David Soria Parra
bookmarks: teach the -r option to use revsets
r17686 $ hg bookmarks
REVSET 0:f7b1eb17ad24
* TIP 2:db815d6d32e6
X2 1:925d80f479bb
Y 2:db815d6d32e6
Z 0:f7b1eb17ad24
$ hg bookmark -d REVSET
$ hg bookmark -d TIP
Kevin Bullock
bookmarks: allow bookmark command to take multiple arguments...
r19147 rename without new name or multiple names
Martin Geisler
tests: unify test-bookmarks
r11861
$ hg bookmark -m Y
abort: new bookmark name required
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Kevin Bullock
bookmarks: allow bookmark command to take multiple arguments...
r19147 $ hg bookmark -m Y Y2 Y3
abort: only one new bookmark name allowed
[255]
Martin Geisler
tests: unify test-bookmarks
r11861
delete without name
$ hg bookmark -d
abort: bookmark name required
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Martin Geisler
tests: unify test-bookmarks
r11861
delete nonexistent bookmark
$ hg bookmark -d A
Idan Kamara
bookmarks: change error messages to match those given by 'hg tag' commands
r13911 abort: bookmark 'A' does not exist
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Martin Geisler
tests: unify test-bookmarks
r11861
bookmark name with spaces should be stripped
$ hg bookmark ' x y '
list bookmarks
$ hg bookmarks
David Soria Parra
bookmarks: mark new bookmark as current if it points to the current dirstate...
r13448 X2 1:925d80f479bb
David Soria Parra
bookmarks: make track.current=True default behaviour and remove option (BC)
r13416 Y 2:db815d6d32e6
Martin Geisler
tests: unify test-bookmarks
r11861 Z 0:f7b1eb17ad24
David Soria Parra
bookmarks: make track.current=True default behaviour and remove option (BC)
r13416 * x y 2:db815d6d32e6
Martin Geisler
tests: unify test-bookmarks
r11861
look up stripped bookmark name
$ hg log -r '"x y"'
David Soria Parra
bookmarks: make track.current=True default behaviour and remove option (BC)
r13416 changeset: 2:db815d6d32e6
David Soria Parra
templater: add bookmarks to templates and default output...
r13386 bookmark: Y
bookmark: x y
Martin Geisler
tests: unify test-bookmarks
r11861 tag: tip
David Soria Parra
bookmarks: make track.current=True default behaviour and remove option (BC)
r13416 parent: 0:f7b1eb17ad24
Martin Geisler
tests: unify test-bookmarks
r11861 user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: 2
reject bookmark name with newline
$ hg bookmark '
> '
Kevin Bullock
bookmarks: remove redundant check for newline...
r17814 abort: bookmark names cannot consist entirely of whitespace
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Martin Geisler
tests: unify test-bookmarks
r11861
David Soria Parra
bookmarks: check bookmark format during rename (issue3662)
r17789 $ hg bookmark -m Z '
> '
Kevin Bullock
bookmarks: remove redundant check for newline...
r17814 abort: bookmark names cannot consist entirely of whitespace
David Soria Parra
bookmarks: check bookmark format during rename (issue3662)
r17789 [255]
Kevin Bullock
bookmarks: disallow bookmarks named 'tip', '.', or 'null'...
r17816 bookmark with reserved name
$ hg bookmark tip
abort: the name 'tip' is reserved
[255]
$ hg bookmark .
abort: the name '.' is reserved
[255]
$ hg bookmark null
abort: the name 'null' is reserved
[255]
Martin Geisler
tests: unify test-bookmarks
r11861 bookmark with existing name
Kevin Bullock
bookmarks: allow moving a bookmark forward to a descendant...
r18773 $ hg bookmark X2
abort: bookmark 'X2' already exists (use -f to force)
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Martin Geisler
tests: unify test-bookmarks
r11861
David Soria Parra
bookmarks: check bookmark format during rename (issue3662)
r17789 $ hg bookmark -m Y Z
abort: bookmark 'Z' already exists (use -f to force)
[255]
bookmark with name of branch
$ hg bookmark default
abort: a bookmark cannot have the name of an existing branch
[255]
$ hg bookmark -m Y default
abort: a bookmark cannot have the name of an existing branch
[255]
Durham Goode
bookmark: don't allow integers as bookmark/branch/tag names...
r18566 bookmark with integer name
$ hg bookmark 10
Durham Goode
translations: change label integer error to not specify the kind of label...
r19070 abort: cannot use an integer as a name
Durham Goode
bookmark: don't allow integers as bookmark/branch/tag names...
r18566 [255]
David Soria Parra
bookmarks: abort when incompatible options are used (issue3663)...
r17790 incompatible options
$ hg bookmark -m Y -d Z
abort: --delete and --rename are incompatible
[255]
$ hg bookmark -r 1 -d Z
abort: --rev is incompatible with --delete
[255]
$ hg bookmark -r 1 -m Z Y
abort: --rev is incompatible with --rename
[255]
Martin Geisler
tests: unify test-bookmarks
r11861 force bookmark with existing name
Kevin Bullock
bookmarks: allow moving a bookmark forward to a descendant...
r18773 $ hg bookmark -f X2
Kevin Bullock
bookmarks: moving the active bookmark deactivates it...
r18782
force bookmark back to where it was, should deactivate it
Kevin Bullock
bookmarks: allow moving a bookmark forward to a descendant...
r18773 $ hg bookmark -fr1 X2
Kevin Bullock
bookmarks: moving the active bookmark deactivates it...
r18782 $ hg bookmarks
X2 1:925d80f479bb
Y 2:db815d6d32e6
Z 0:f7b1eb17ad24
x y 2:db815d6d32e6
Kevin Bullock
bookmarks: allow moving a bookmark forward to a descendant...
r18773
forward bookmark to descendant without --force
$ hg bookmark Z
Kevin Bullock
bookmarks: fix test broken by 0bba1ff2ac7b...
r18774 moving bookmark 'Z' forward from f7b1eb17ad24
Martin Geisler
tests: unify test-bookmarks
r11861
list bookmarks
$ hg bookmark
David Soria Parra
bookmarks: mark new bookmark as current if it points to the current dirstate...
r13448 X2 1:925d80f479bb
David Soria Parra
bookmarks: make track.current=True default behaviour and remove option (BC)
r13416 Y 2:db815d6d32e6
* Z 2:db815d6d32e6
x y 2:db815d6d32e6
Martin Geisler
tests: unify test-bookmarks
r11861
revision but no bookmark name
$ hg bookmark -r .
abort: bookmark name required
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Martin Geisler
tests: unify test-bookmarks
r11861
bookmark name with whitespace only
$ hg bookmark ' '
abort: bookmark names cannot consist entirely of whitespace
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
David Soria Parra
bookmarks: forbid \0 \r \n : in bookmark names (BC)...
r13425
David Soria Parra
bookmarks: check bookmark format during rename (issue3662)
r17789 $ hg bookmark -m Y ' '
abort: bookmark names cannot consist entirely of whitespace
[255]
David Soria Parra
bookmarks: forbid \0 \r \n : in bookmark names (BC)...
r13425 invalid bookmark
$ hg bookmark 'foo:bar'
Wagner Bruna
scmutil: generalize message to make it more i18n-friendly
r17850 abort: ':' cannot be used in a name
Kevin Bullock
scmutil: add bad character checking to checknewlabel...
r17821 [255]
$ hg bookmark 'foo
> bar'
Wagner Bruna
scmutil: generalize message to make it more i18n-friendly
r17850 abort: '\n' cannot be used in a name
David Soria Parra
bookmarks: forbid \0 \r \n : in bookmark names (BC)...
r13425 [255]
David Soria Parra
tests: check if the bookmarks extension is ignored
r13474 the bookmark extension should be ignored now that it is part of core
$ echo "[extensions]" >> $HGRCPATH
$ echo "bookmarks=" >> $HGRCPATH
$ hg bookmarks
X2 1:925d80f479bb
Y 2:db815d6d32e6
* Z 2:db815d6d32e6
x y 2:db815d6d32e6
Alexander Solovyov
fix bookmarks rollback behavior...
r14266
David Soria Parra
summary: add bookmarks to summary
r13454 test summary
$ hg summary
Augie Fackler
summary: show bookmarks separate from tags and note active mark (issue2892)
r14906 parent: 2:db815d6d32e6 tip
David Soria Parra
summary: add bookmarks to summary
r13454 2
branch: default
Augie Fackler
summary: show bookmarks separate from tags and note active mark (issue2892)
r14906 bookmarks: *Z Y x y
David Soria Parra
summary: add bookmarks to summary
r13454 commit: (clean)
update: 1 new changesets, 2 branch heads (merge)
Gilles Moris
summary: move the parents phase marker to commit line (issue4688)...
r25382 phases: 3 draft
David Soria Parra
summary: add bookmarks to summary
r13454
Kevin Bullock
id: add bookmarks to id...
r13477 test id
$ hg id
db815d6d32e6 tip Y/Z/x y
Alexander Solovyov
fix bookmarks rollback behavior...
r14266
test rollback
Matt Mackall
merge with stable
r14268 $ echo foo > f1
Pierre-Yves David
bookmarks: change bookmark within a transaction...
r25744 $ hg bookmark tmp-rollback
Matt Mackall
merge with stable
r14268 $ hg ci -Amr
adding f1
Pierre-Yves David
bookmarks: change bookmark within a transaction...
r25744 $ hg bookmarks
X2 1:925d80f479bb
Y 2:db815d6d32e6
Z 2:db815d6d32e6
* tmp-rollback 3:2bf5cfec5864
x y 2:db815d6d32e6
Alexander Solovyov
fix bookmarks rollback behavior...
r14266 $ hg rollback
Matt Mackall
merge with stable
r14268 repository tip rolled back to revision 2 (undo commit)
working directory now based on revision 2
$ hg bookmarks
X2 1:925d80f479bb
Y 2:db815d6d32e6
Kevin Bullock
bookmarks: moving the active bookmark deactivates it...
r18782 Z 2:db815d6d32e6
Pierre-Yves David
bookmarks: change bookmark within a transaction...
r25744 * tmp-rollback 2:db815d6d32e6
Matt Mackall
merge with stable
r14268 x y 2:db815d6d32e6
Pierre-Yves David
bookmarks: change bookmark within a transaction...
r25744 $ hg bookmark -f Z -r 1
$ hg rollback
repository tip rolled back to revision 2 (undo bookmark)
$ hg bookmarks
X2 1:925d80f479bb
Y 2:db815d6d32e6
Z 2:db815d6d32e6
* tmp-rollback 2:db815d6d32e6
x y 2:db815d6d32e6
$ hg bookmark -d tmp-rollback
Matt Mackall
merge with stable
r14268
Kevin Bullock
bookmarks: allow (re-)activating a bookmark on the current changeset...
r18781 activate bookmark on working dir parent without --force
$ hg bookmark --inactive Z
$ hg bookmark Z
David Soria Parra
hg: add support for cloning bookmarks
r13604 test clone
Kevin Bullock
bookmarks: clone non-divergent bookmarks with @ in them
r16276 $ hg bookmark -r 2 -i @
$ hg bookmark -r 2 -i a@
Alexander Solovyov
fix bookmarks rollback behavior...
r14266 $ hg bookmarks
Kevin Bullock
bookmarks: clone non-divergent bookmarks with @ in them
r16276 @ 2:db815d6d32e6
David Soria Parra
hg: add support for cloning bookmarks
r13604 X2 1:925d80f479bb
Y 2:db815d6d32e6
* Z 2:db815d6d32e6
Kevin Bullock
bookmarks: clone non-divergent bookmarks with @ in them
r16276 a@ 2:db815d6d32e6
David Soria Parra
hg: add support for cloning bookmarks
r13604 x y 2:db815d6d32e6
$ hg clone . cloned-bookmarks
Adrian Buehlmann
clone: show status "updating to bookmark @"...
r17882 updating to bookmark @
David Soria Parra
hg: add support for cloning bookmarks
r13604 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg -R cloned-bookmarks bookmarks
Thomas Arendsen Hein
clone: activate @ bookmark if updating to it...
r17870 * @ 2:db815d6d32e6
David Soria Parra
hg: add support for cloning bookmarks
r13604 X2 1:925d80f479bb
Y 2:db815d6d32e6
Z 2:db815d6d32e6
Kevin Bullock
bookmarks: clone non-divergent bookmarks with @ in them
r16276 a@ 2:db815d6d32e6
David Soria Parra
hg: add support for cloning bookmarks
r13604 x y 2:db815d6d32e6
test clone with pull protocol
$ hg clone --pull . cloned-bookmarks-pull
requesting all changes
adding changesets
adding manifests
adding file changes
added 3 changesets with 3 changes to 3 files (+1 heads)
Adrian Buehlmann
clone: show status "updating to bookmark @"...
r17882 updating to bookmark @
David Soria Parra
hg: add support for cloning bookmarks
r13604 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg -R cloned-bookmarks-pull bookmarks
Thomas Arendsen Hein
clone: activate @ bookmark if updating to it...
r17870 * @ 2:db815d6d32e6
Alexander Solovyov
fix bookmarks rollback behavior...
r14266 X2 1:925d80f479bb
David Soria Parra
hg: add support for cloning bookmarks
r13604 Y 2:db815d6d32e6
Z 2:db815d6d32e6
Kevin Bullock
bookmarks: clone non-divergent bookmarks with @ in them
r16276 a@ 2:db815d6d32e6
David Soria Parra
hg: add support for cloning bookmarks
r13604 x y 2:db815d6d32e6
Kevin Bullock
bookmarks: allow bookmark command to take multiple arguments...
r19147 delete multiple bookmarks at once
$ hg bookmark -d @ a@
Kevin Bullock
bookmarks: clone non-divergent bookmarks with @ in them
r16276
Thomas Arendsen Hein
test-bookmarks.t: check that bookmark "default" is not automatically checked out...
r17868 test clone with a bookmark named "default" (issue3677)
$ hg bookmark -r 1 -f -i default
$ hg clone . cloned-bookmark-default
updating to branch default
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg -R cloned-bookmark-default bookmarks
X2 1:925d80f479bb
Y 2:db815d6d32e6
Z 2:db815d6d32e6
default 1:925d80f479bb
x y 2:db815d6d32e6
$ hg -R cloned-bookmark-default parents -q
2:db815d6d32e6
$ hg bookmark -d default
David Soria Parra
hg: add support for cloning bookmarks
r13604 test clone with a specific revision
$ hg clone -r 925d80 . cloned-bookmarks-rev
adding changesets
adding manifests
adding file changes
added 2 changesets with 2 changes to 2 files
updating to branch default
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg -R cloned-bookmarks-rev bookmarks
X2 1:925d80f479bb
David Soria Parra
bundle: update current bookmark to most recent revision on current branch...
r13663
Thomas Arendsen Hein
clone: activate bookmark specified with --updaterev
r17703 test clone with update to a bookmark
Siddharth Agarwal
test-bookmarks.t: avoid nested repo...
r25893 $ hg clone -u Z . ../cloned-bookmarks-update
Thomas Arendsen Hein
clone: activate bookmark specified with --updaterev
r17703 updating to branch default
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
Siddharth Agarwal
test-bookmarks.t: avoid nested repo...
r25893 $ hg -R ../cloned-bookmarks-update bookmarks
Thomas Arendsen Hein
clone: activate bookmark specified with --updaterev
r17703 X2 1:925d80f479bb
Y 2:db815d6d32e6
* Z 2:db815d6d32e6
x y 2:db815d6d32e6
David Soria Parra
bundle: update current bookmark to most recent revision on current branch...
r13663 create bundle with two heads
$ hg clone . tobundle
updating to branch default
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ echo x > tobundle/x
$ hg -R tobundle add tobundle/x
$ hg -R tobundle commit -m'x'
$ hg -R tobundle update -r -2
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ echo y > tobundle/y
$ hg -R tobundle branch test
marked working directory as branch test
Matt Mackall
branch: warn on branching
r15615 (branches are permanent and global, did you want a bookmark?)
David Soria Parra
bundle: update current bookmark to most recent revision on current branch...
r13663 $ hg -R tobundle add tobundle/y
$ hg -R tobundle commit -m'y'
$ hg -R tobundle bundle tobundle.hg
searching for changes
2 changesets found
$ hg unbundle tobundle.hg
adding changesets
adding manifests
adding file changes
added 2 changesets with 2 changes to 2 files (+1 heads)
(run 'hg heads' to see heads, 'hg merge' to merge)
Kevin Bullock
update: update to current bookmark if it moved out from under us (issue3682)...
r18471
Ryan McElroy
commands: rename current to active in variables and comments...
r25349 update to active bookmark if it's not the parent
Kevin Bullock
update: update to current bookmark if it moved out from under us (issue3682)...
r18471
Kevin Bullock
summary: test that current bookmark isn't shown...
r18620 $ hg summary
parent: 2:db815d6d32e6
2
branch: default
Matt Mackall
unbundle: don't advance bookmarks (issue4322) (BC)...
r22091 bookmarks: *Z Y x y
Kevin Bullock
summary: test that current bookmark isn't shown...
r18620 commit: 1 added, 1 unknown (new branch head)
update: 2 new changesets (update)
Gilles Moris
summary: move the parents phase marker to commit line (issue4688)...
r25382 phases: 5 draft
David Soria Parra
bundle: update current bookmark to most recent revision on current branch...
r13663 $ hg update
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
Matt Mackall
unbundle: don't advance bookmarks (issue4322) (BC)...
r22091 updating bookmark Z
David Soria Parra
bundle: update current bookmark to most recent revision on current branch...
r13663 $ hg bookmarks
X2 1:925d80f479bb
Y 2:db815d6d32e6
* Z 3:125c9a1d6df6
x y 2:db815d6d32e6
Kevin Bullock
bookmarks: pull --update updates to active bookmark if it moved (issue4007)...
r19523 pull --update works the same as pull && update
$ hg bookmark -r3 Y
moving bookmark 'Y' forward from db815d6d32e6
Pierre-Yves David
bookmark: actually test update behavior in both cases...
r26285 $ cp -r ../cloned-bookmarks-update ../cloned-bookmarks-manual-update
Pierre-Yves David
update: warn about other topological heads on bare update...
r28029 $ cp -r ../cloned-bookmarks-update ../cloned-bookmarks-manual-update-with-divergence
Pierre-Yves David
bookmark: actually test update behavior in both cases...
r26285
(manual version)
$ hg -R ../cloned-bookmarks-manual-update update Y
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
(activating bookmark Y)
$ hg -R ../cloned-bookmarks-manual-update pull .
pulling from .
searching for changes
adding changesets
adding manifests
adding file changes
added 2 changesets with 2 changes to 2 files (+1 heads)
updating bookmark Y
updating bookmark Z
(run 'hg heads' to see heads, 'hg merge' to merge)
Pierre-Yves David
bookmark: do not crash when active bookmark is forward and --date is used...
r26286
(# tests strange but with --date crashing when bookmark have to move)
$ hg -R ../cloned-bookmarks-manual-update update -d 1986
abort: revision matching date not found
[255]
Pierre-Yves David
bookmark: actually test update behavior in both cases...
r26285 $ hg -R ../cloned-bookmarks-manual-update update
updating to active bookmark Y
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(all in one version)
Siddharth Agarwal
test-bookmarks.t: avoid nested repo...
r25893 $ hg -R ../cloned-bookmarks-update update Y
Kevin Bullock
bookmarks: pull --update updates to active bookmark if it moved (issue4007)...
r19523 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
Stephen Lee
update: show message when a bookmark is activated by update...
r21503 (activating bookmark Y)
Siddharth Agarwal
test-bookmarks.t: avoid nested repo...
r25893 $ hg -R ../cloned-bookmarks-update pull --update .
Kevin Bullock
bookmarks: pull --update updates to active bookmark if it moved (issue4007)...
r19523 pulling from .
searching for changes
adding changesets
adding manifests
adding file changes
added 2 changesets with 2 changes to 2 files (+1 heads)
updating bookmark Y
updating bookmark Z
updating to active bookmark Y
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
Pierre-Yves David
update: warn about other topological heads on bare update...
r28029 We warn about divergent during bare update to the active bookmark
$ hg -R ../cloned-bookmarks-manual-update-with-divergence update Y
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
(activating bookmark Y)
$ hg -R ../cloned-bookmarks-manual-update-with-divergence bookmarks -r X2 Y@1
$ hg -R ../cloned-bookmarks-manual-update-with-divergence bookmarks
X2 1:925d80f479bb
* Y 2:db815d6d32e6
Y@1 1:925d80f479bb
Z 2:db815d6d32e6
x y 2:db815d6d32e6
$ hg -R ../cloned-bookmarks-manual-update-with-divergence pull
pulling from $TESTTMP
searching for changes
adding changesets
adding manifests
adding file changes
added 2 changesets with 2 changes to 2 files (+1 heads)
updating bookmark Y
updating bookmark Z
(run 'hg heads' to see heads, 'hg merge' to merge)
$ hg -R ../cloned-bookmarks-manual-update-with-divergence update
updating to active bookmark Y
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1 other divergent bookmarks for "Y"
Pierre-Yves David
bookmarks: more robust parsing of bookmarks file
r14845 test wrongly formated bookmark
$ echo '' >> .hg/bookmarks
$ hg bookmarks
X2 1:925d80f479bb
Kevin Bullock
bookmarks: pull --update updates to active bookmark if it moved (issue4007)...
r19523 Y 3:125c9a1d6df6
Pierre-Yves David
bookmarks: more robust parsing of bookmarks file
r14845 * Z 3:125c9a1d6df6
x y 2:db815d6d32e6
Pierre-Yves David
bookmarks: add a warning for non empty malformed line
r14846 $ echo "Ican'thasformatedlines" >> .hg/bookmarks
$ hg bookmarks
malformed line in .hg/bookmarks: "Ican'thasformatedlines"
X2 1:925d80f479bb
Kevin Bullock
bookmarks: pull --update updates to active bookmark if it moved (issue4007)...
r19523 Y 3:125c9a1d6df6
Pierre-Yves David
bookmarks: add a warning for non empty malformed line
r14846 * Z 3:125c9a1d6df6
x y 2:db815d6d32e6
Matt Mackall
bookmarks: catch the proper exception for missing revisions...
r16573 test missing revisions
$ echo "925d80f479bc z" > .hg/bookmarks
$ hg book
no bookmarks set
Augie Fackler
strip: move bookmarks to nearest ancestor rather than '.'...
r17264
test stripping a non-checked-out but bookmarked revision
Martin Geisler
tests: don't load unnecessary graphlog extension...
r20117 $ hg log --graph
Augie Fackler
strip: move bookmarks to nearest ancestor rather than '.'...
r17264 o changeset: 4:9ba5f110a0b3
| branch: test
| tag: tip
| parent: 2:db815d6d32e6
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: y
|
| @ changeset: 3:125c9a1d6df6
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: x
|
o changeset: 2:db815d6d32e6
| parent: 0:f7b1eb17ad24
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: 2
|
| o changeset: 1:925d80f479bb
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: 1
|
o changeset: 0:f7b1eb17ad24
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: 0
$ hg book should-end-on-two
$ hg co --clean 4
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
Siddharth Agarwal
update: when deactivating a bookmark, print a message...
r21404 (leaving bookmark should-end-on-two)
Augie Fackler
strip: move bookmarks to nearest ancestor rather than '.'...
r17264 $ hg book four
$ hg --config extensions.mq= strip 3
saved backup bundle to * (glob)
should-end-on-two should end up pointing to revision 2, as that's the
tipmost surviving ancestor of the stripped revision.
Martin Geisler
tests: don't load unnecessary graphlog extension...
r20117 $ hg log --graph
Augie Fackler
strip: move bookmarks to nearest ancestor rather than '.'...
r17264 @ changeset: 3:9ba5f110a0b3
| branch: test
| bookmark: four
| tag: tip
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: y
|
o changeset: 2:db815d6d32e6
| bookmark: should-end-on-two
| parent: 0:f7b1eb17ad24
| user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: 2
|
| o changeset: 1:925d80f479bb
|/ user: test
| date: Thu Jan 01 00:00:00 1970 +0000
| summary: 1
|
o changeset: 0:f7b1eb17ad24
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: 0
Sean Farley
bookmarks: resolve divergent bookmarks when fowarding bookmark to descendant...
r19109
Matt Mackall
bookmarks: don't deactivate on no-op update (issue4901)
r26676 no-op update doesn't deactive bookmarks
FUJIWARA Katsunori
update: omit redundant activating message for already active bookmark...
r28500 $ hg bookmarks
* four 3:9ba5f110a0b3
should-end-on-two 2:db815d6d32e6
Pierre-Yves David
update: change default destination to tipmost descendant (issue4673) (BC)...
r28065 $ hg up four
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
Matt Mackall
bookmarks: don't deactivate on no-op update (issue4901)
r26676 $ hg up
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg sum
parent: 3:9ba5f110a0b3 tip
y
branch: test
bookmarks: *four
commit: 2 unknown (clean)
update: (current)
phases: 4 draft
Sean Farley
bookmarks: resolve divergent bookmarks when fowarding bookmark to descendant...
r19109 test clearing divergent bookmarks of linear ancestors
$ hg bookmark Z -r 0
$ hg bookmark Z@1 -r 1
$ hg bookmark Z@2 -r 2
$ hg bookmark Z@3 -r 3
$ hg book
Z 0:f7b1eb17ad24
Z@1 1:925d80f479bb
Z@2 2:db815d6d32e6
Sean Farley
bookmarks: fix bug that activated a bookmark even with -r passed...
r19112 Z@3 3:9ba5f110a0b3
* four 3:9ba5f110a0b3
Sean Farley
bookmarks: resolve divergent bookmarks when fowarding bookmark to descendant...
r19109 should-end-on-two 2:db815d6d32e6
$ hg bookmark Z
moving bookmark 'Z' forward from f7b1eb17ad24
$ hg book
* Z 3:9ba5f110a0b3
Z@1 1:925d80f479bb
four 3:9ba5f110a0b3
should-end-on-two 2:db815d6d32e6
Sean Farley
bookmarks: resolve divergent bookmark when moving across a branch...
r19111
test clearing only a single divergent bookmark across branches
$ hg book foo -r 1
$ hg book foo@1 -r 0
$ hg book foo@2 -r 2
$ hg book foo@3 -r 3
$ hg book foo -r foo@3
$ hg book
Sean Farley
bookmarks: fix bug that activated a bookmark even with -r passed...
r19112 * Z 3:9ba5f110a0b3
Sean Farley
bookmarks: resolve divergent bookmark when moving across a branch...
r19111 Z@1 1:925d80f479bb
Sean Farley
bookmarks: fix bug that activated a bookmark even with -r passed...
r19112 foo 3:9ba5f110a0b3
Sean Farley
bookmarks: resolve divergent bookmark when moving across a branch...
r19111 foo@1 0:f7b1eb17ad24
foo@2 2:db815d6d32e6
four 3:9ba5f110a0b3
should-end-on-two 2:db815d6d32e6
FUJIWARA Katsunori
commands: advance current active bookmark at pull --update correctly...
r27948
pull --update works the same as pull && update (case #2)
It is assumed that "hg pull" itself doesn't update current active
bookmark ('Y' in tests below).
$ hg pull -q ../cloned-bookmarks-update
divergent bookmark Z stored as Z@2
(pulling revision on another named branch with --update updates
neither the working directory nor current active bookmark: "no-op"
case)
$ echo yy >> y
$ hg commit -m yy
$ hg -R ../cloned-bookmarks-update bookmarks | grep ' Y '
* Y 3:125c9a1d6df6
$ hg -R ../cloned-bookmarks-update pull . --update
pulling from .
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
divergent bookmark Z stored as Z@default
adding remote bookmark foo
adding remote bookmark four
adding remote bookmark should-end-on-two
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg -R ../cloned-bookmarks-update parents -T "{rev}:{node|short}\n"
3:125c9a1d6df6
$ hg -R ../cloned-bookmarks-update bookmarks | grep ' Y '
* Y 3:125c9a1d6df6
(pulling revision on current named/topological branch with --update
updates the working directory and current active bookmark)
$ hg update -C -q 125c9a1d6df6
$ echo xx >> x
$ hg commit -m xx
$ hg -R ../cloned-bookmarks-update bookmarks | grep ' Y '
* Y 3:125c9a1d6df6
$ hg -R ../cloned-bookmarks-update pull . --update
pulling from .
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
divergent bookmark Z stored as Z@default
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
updating bookmark Y
$ hg -R ../cloned-bookmarks-update parents -T "{rev}:{node|short}\n"
6:81dcce76aa0b
$ hg -R ../cloned-bookmarks-update bookmarks | grep ' Y '
* Y 6:81dcce76aa0b
Durham Goode
transaction: allow running file generators after finalizers...
r28830
$ cd ..
ensure changelog is written before bookmarks
$ hg init orderrepo
$ cd orderrepo
$ touch a
$ hg commit -Aqm one
$ hg book mybook
$ echo a > a
$ cat > $TESTTMP/pausefinalize.py <<EOF
> from mercurial import extensions, localrepo
> import os, time
> def transaction(orig, self, desc, report=None):
> tr = orig(self, desc, report)
> def sleep(*args, **kwargs):
> retry = 20
> while retry > 0 and not os.path.exists("$TESTTMP/unpause"):
> retry -= 1
> time.sleep(0.5)
> if os.path.exists("$TESTTMP/unpause"):
> os.remove("$TESTTMP/unpause")
> # It is important that this finalizer start with 'a', so it runs before
> # the changelog finalizer appends to the changelog.
> tr.addfinalize('a-sleep', sleep)
> return tr
>
> def extsetup(ui):
> # This extension inserts an artifical pause during the transaction
> # finalizer, so we can run commands mid-transaction-close.
> extensions.wrapfunction(localrepo.localrepository, 'transaction',
> transaction)
> EOF
$ hg commit -qm two --config extensions.pausefinalize=$TESTTMP/pausefinalize.py &
$ sleep 2
$ hg log -r .
changeset: 0:867bc5792c8c
bookmark: mybook
tag: tip
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: one
$ hg bookmarks
* mybook 0:867bc5792c8c
$ touch $TESTTMP/unpause
$ cd ..