Option to log to only show changesets within a specified branch.
authorDustin Sallings <dustin@spy.net>
Fri, 08 Feb 2008 21:31:03 -0800
changeset 6067 57c1a7052982
parent 6049 348132c112cf
child 6068 ea33f695304a
Option to log to only show changesets within a specified branch.
mercurial/commands.py
tests/test-branches
tests/test-branches.out
--- a/mercurial/commands.py	Fri Feb 08 13:56:29 2008 +0100
+++ b/mercurial/commands.py	Fri Feb 08 21:31:03 2008 -0800
@@ -1713,6 +1713,8 @@
     if opts["date"]:
         df = util.matchdate(opts["date"])
 
+    only_branches = opts['only_branch']
+
     displayer = cmdutil.show_changeset(ui, repo, opts, True, matchfn)
     for st, rev, fns in changeiter:
         if st == 'add':
@@ -1724,6 +1726,11 @@
             if opts['only_merges'] and len(parents) != 2:
                 continue
 
+            if only_branches:
+                revbranch = get(rev)[5]['branch']
+                if revbranch not in only_branches:
+                    continue
+
             if df:
                 changes = get(rev)
                 if not df(changes[2][0]):
@@ -2930,6 +2937,8 @@
           ('M', 'no-merges', None, _('do not show merges')),
           ('', 'style', '', _('display using template map file')),
           ('m', 'only-merges', None, _('show only merges')),
+          ('b', 'only-branch', [],
+            _('show only changesets within the given named branch')),
           ('p', 'patch', None, _('show patch')),
           ('P', 'prune', [], _('do not display revision or any of its ancestors')),
           ('', 'template', '', _('display with template')),
--- a/tests/test-branches	Fri Feb 08 13:56:29 2008 +0100
+++ b/tests/test-branches	Fri Feb 08 21:31:03 2008 -0800
@@ -34,3 +34,9 @@
 hg branches
 echo '-------'
 hg branches -a
+
+echo "--- Branch a"
+hg log -b a
+
+echo "---- Branch b"
+hg log -b b
--- a/tests/test-branches.out	Fri Feb 08 13:56:29 2008 +0100
+++ b/tests/test-branches.out	Fri Feb 08 21:31:03 2008 -0800
@@ -10,3 +10,31 @@
 -------
 c                              5:5ca481e59b8c
 a                              1:dd6b440dd85a
+--- Branch a
+changeset:   1:dd6b440dd85a
+branch:      a
+user:        test
+date:        Thu Jan 01 00:00:01 1970 +0000
+summary:     Adding a branch
+
+---- Branch b
+changeset:   4:22df7444f7c1
+branch:      b
+parent:      2:ac22033332d1
+user:        test
+date:        Thu Jan 01 00:00:04 1970 +0000
+summary:     Adding b branch head 2
+
+changeset:   3:aee39cd168d0
+branch:      b
+user:        test
+date:        Thu Jan 01 00:00:03 1970 +0000
+summary:     Adding b branch head 1
+
+changeset:   2:ac22033332d1
+branch:      b
+parent:      0:19709c5a4e75
+user:        test
+date:        Thu Jan 01 00:00:02 1970 +0000
+summary:     Adding b branch
+