4 # stg-mdiff - display meta-diffs, ie. diffs of diffs
6 # Main use: show evolutions of a patch.
7 # eg. stg-mdiff foo@stable foo
8 # stg-mdiff foo 012345567ABCD # sha1 for "foo" as integrated upstream
10 # Copyright (c) 2007 Yann Dirson <ydirson@altern.org>
11 # Subject to the GNU GPL, version 2.
15 echo "Usage: [-o <diff-flags>] [-O <gitdiff-flags>] $(basename "$0") <from1>..[<to1>]|<patch1> <from2>..[<to2>]|<patch2>"
21 while [ "$#" -gt 0 ]; do
23 -o) diffopts
="$2"; shift ;;
24 -O) subdiffopts
="-O $2"; shift ;;
31 if [ "$#" != 2 ]; then
35 if [ -z "$diffopts" ]; then
40 *..
*) cmd1
="stg diff $subdiffopts -r" ;;
41 *) cmd1
="stg show $subdiffopts" ;;
44 *..
*) cmd2
="stg diff $subdiffopts -r" ;;
45 *) cmd2
="stg show $subdiffopts" ;;
49 -I '^index [0-9a-b]*..[0-9a-b]*' \
51 <($cmd1 "$1") <($cmd2 "$2") |
less -RFX