diff tests/test-log-bookmark.t @ 45900:0aa118f18d4b

log: add bookmark option to "hg log" Before pushing a bookmark with "hg push origin -B 'my-topic'", it is useful to inspect the list of commits that are ancestors of the bookmark. By relying on scmutil.bookmarkrevs(), "hg log -B topic" has the same bookmark semantics found in other commands like hg export, hg email, hg strip. Differential Revision: https://phab.mercurial-scm.org/D9341
author Sebastien Boisvert <sebhtml@protonmail.com>
date Tue, 17 Nov 2020 21:30:50 -0500
parents
children 9c0db3671008
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-log-bookmark.t	Tue Nov 17 21:30:50 2020 -0500
@@ -0,0 +1,127 @@
+Test 'hg log' with a bookmark
+
+
+Create the repository
+
+  $ hg init Test-D8973
+  $ cd Test-D8973
+  $ echo "bar" > foo.txt
+  $ hg add foo.txt
+  $ hg commit -m "Add foo in 'default'"
+
+
+Add a bookmark for topic X
+
+  $ hg branch -f sebhtml
+  marked working directory as branch sebhtml
+  (branches are permanent and global, did you want a bookmark?)
+
+  $ hg bookmark sebhtml/99991-topic-X
+  $ hg up sebhtml/99991-topic-X
+  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
+
+  $ echo "X" > x.txt
+  $ hg add x.txt
+  $ hg commit -m "Add x.txt in 'sebhtml/99991-topic-X'"
+
+  $ hg log -B sebhtml/99991-topic-X
+  changeset:   1:29f39dea9bf9
+  branch:      sebhtml
+  bookmark:    sebhtml/99991-topic-X
+  tag:         tip
+  user:        test
+  date:        Thu Jan 01 00:00:00 1970 +0000
+  summary:     Add x.txt in 'sebhtml/99991-topic-X'
+  
+
+Add a bookmark for topic Y
+
+  $ hg update default
+  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
+  (leaving bookmark sebhtml/99991-topic-X)
+
+  $ echo "Y" > y.txt
+  $ hg add y.txt
+  $ hg branch -f sebhtml
+  marked working directory as branch sebhtml
+  $ hg bookmark sebhtml/99992-topic-Y
+  $ hg up sebhtml/99992-topic-Y
+  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  $ hg commit -m "Add y.txt in 'sebhtml/99992-topic-Y'"
+  created new head
+
+  $ hg log -B sebhtml/99992-topic-Y
+  changeset:   2:11df7969cf8d
+  branch:      sebhtml
+  bookmark:    sebhtml/99992-topic-Y
+  tag:         tip
+  parent:      0:eaea25376a59
+  user:        test
+  date:        Thu Jan 01 00:00:00 1970 +0000
+  summary:     Add y.txt in 'sebhtml/99992-topic-Y'
+  
+
+The log of topic Y does not interfere with the log of topic X
+
+  $ hg log -B sebhtml/99991-topic-X
+  changeset:   1:29f39dea9bf9
+  branch:      sebhtml
+  bookmark:    sebhtml/99991-topic-X
+  user:        test
+  date:        Thu Jan 01 00:00:00 1970 +0000
+  summary:     Add x.txt in 'sebhtml/99991-topic-X'
+  
+
+Merge topics Y and X in the default branch
+
+  $ hg update default
+  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
+  (leaving bookmark sebhtml/99992-topic-Y)
+
+  $ hg bookmark
+     sebhtml/99991-topic-X     1:29f39dea9bf9
+     sebhtml/99992-topic-Y     2:11df7969cf8d
+
+  $ hg merge sebhtml/99992-topic-Y
+  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  (branch merge, don't forget to commit)
+
+  $ hg commit -m "Merge branch 'sebhtml/99992-topic-Y' into 'default'"
+
+  $ hg update default
+  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
+
+  $ hg merge sebhtml/99991-topic-X
+  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  (branch merge, don't forget to commit)
+
+  $ hg commit -m "Merge branch 'sebhtml/99991-topic-X' into 'default'"
+
+
+Check the log of topic X, topic Y, and default branch
+
+  $ hg log -B sebhtml/99992-topic-Y
+
+  $ hg log -B sebhtml/99991-topic-X
+
+  $ hg log -b default
+  changeset:   4:c26ba8c1e1cb
+  tag:         tip
+  parent:      3:2189f3fb90d6
+  parent:      1:29f39dea9bf9
+  user:        test
+  date:        Thu Jan 01 00:00:00 1970 +0000
+  summary:     Merge branch 'sebhtml/99991-topic-X' into 'default'
+  
+  changeset:   3:2189f3fb90d6
+  parent:      0:eaea25376a59
+  parent:      2:11df7969cf8d
+  user:        test
+  date:        Thu Jan 01 00:00:00 1970 +0000
+  summary:     Merge branch 'sebhtml/99992-topic-Y' into 'default'
+  
+  changeset:   0:eaea25376a59
+  user:        test
+  date:        Thu Jan 01 00:00:00 1970 +0000
+  summary:     Add foo in 'default'
+