* Catalin Marinas <catalin.marinas@xxxxxxxxx>: > Hi Alex, > > Sorry for the loooong delay. No problem. > 2009/6/19 Alex Chiang <achiang@xxxxxx>: > > Add -s/--summary option to stg show, which will generate a nice > > diffstat, similar to what you get in a cover mail if you specify > > %(diffstat)s. > > I would use --stat for consistency with the diff command. > > > + commit_str = gitlib.diffstat(git.diff( > > + rev1 = git_id(crt_series, '%s^' % patches[0]), > > + rev2 = git_id(crt_series, '%s' % patches[-1]))) > > This works only of the shown patches are consecutive. If you specify > random patches, the diffstat isn't correct. I propose this form of the > patch: Looks much nicer than mine, thanks. Tested-by: Alex Chiang <achiang@xxxxxx> [how about that other patch "fix stg mail %(shortlog)s order"? :) ] /ac > diff --git a/stgit/commands/show.py b/stgit/commands/show.py > index b7a8aa9..45c3a56 100644 > --- a/stgit/commands/show.py > +++ b/stgit/commands/show.py > @@ -20,6 +20,7 @@ from pydoc import pager > from stgit.argparse import opt > from stgit.commands.common import * > from stgit import argparse, git > +from stgit.lib import git as gitlib > > help = 'Show the commit corresponding to a patch' > kind = 'patch' > @@ -38,6 +39,8 @@ options = [ > short = 'Show the applied patches'), > opt('-u', '--unapplied', action = 'store_true', > short = 'Show the unapplied patches'), > + opt('-s', '--stat', action = 'store_true', > + short = 'Show a diffstat summary of the specified patches'), > ] + argparse.diff_opts_option() > > directory = DirectoryHasRepository(log = False) > @@ -61,10 +64,13 @@ def func(parser, options, args): > # individual patches or commit ids > patches = args > > - options.diff_flags.extend(color_diff_flags()) > + if not options.stat: > + options.diff_flags.extend(color_diff_flags()) > commit_ids = [git_id(crt_series, patch) for patch in patches] > commit_str = '\n'.join([git.pretty_commit(commit_id, > flags = options.diff_flags) > for commit_id in commit_ids]) > + if options.stat: > + commit_str = gitlib.diffstat(commit_str) > if commit_str: > pager(commit_str) > > > -- > Catalin > -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html