From: Yann Dirson <yann.dirson@sagem.com>
Signed-off-by: Yann Dirson <ydirson@altern.org>
---
contrib/stg-dispatch | 20 +++++++++++++++-----
contrib/stg-fold-files-from | 15 +++++++++++++--
2 files changed, 28 insertions(+), 7 deletions(-)
diff --git a/contrib/stg-dispatch b/contrib/stg-dispatch
index 8911946..e9cfb05 100755
--- a/contrib/stg-dispatch
+++ b/contrib/stg-dispatch
@@ -6,7 +6,7 @@ set -e
# do so), but from the patch containing the changes to migrate,
# instead of doing so from the target patch.
-# usage: stg-dispatch <topatch> [-#<n>[-<n>][,<n>]...] <file-pattern>
+# usage: stg-dispatch [-n] <topatch> [-#<n>[-<n>][,<n>]...] <file-pattern>
# Copyright (c) 2007 Yann Dirson <ydirson@altern.org>
# Subject to the GNU GPL, version 2.
@@ -17,6 +17,12 @@ die()
exit 1
}
+noact=0
+if [ "x$1" = "x-n" ]; then
+ noact=1
+ shift
+fi
+
TOPATCH="$1"
shift
@@ -28,7 +34,11 @@ CURRENTPATCH=$(stg top)
[ "x$TOPATCH" != "x$CURRENTPATCH" ] ||
die "dispatching to current patch ($CURRENTPATCH) makes no sense"
-stg goto "$TOPATCH"
-stg-fold-files-from "$CURRENTPATCH" "$@"
-stg refresh
-stg goto "$CURRENTPATCH"
+if [ $noact = 1 ]; then
+ stg-fold-files-from "$CURRENTPATCH" -n "$@"
+else
+ stg goto "$TOPATCH"
+ stg-fold-files-from "$CURRENTPATCH" "$@"
+ stg refresh
+ stg goto "$CURRENTPATCH"
+fi
diff --git a/contrib/stg-fold-files-from b/contrib/stg-fold-files-from
index 806a157..c52abfc 100755
--- a/contrib/stg-fold-files-from
+++ b/contrib/stg-fold-files-from
@@ -8,7 +8,7 @@ set -e
# identify hunk numbers easily.
# Use "-O -U<n>" to get finer hunk granularity for -#<n>.
-# usage: stg-fold-files-from <patch> [-O <stg-show-flags>] [-#<n>[-<n>][,<n>]...] <file-pattern>
+# usage: stg-fold-files-from <patch> [-n] [-O <stg-show-flags>] [-#<n>[-<n>][,<n>]...] <file-pattern>
# Copyright (c) 2006-2007 Yann Dirson <ydirson@altern.org>
# Subject to the GNU GPL, version 2.
@@ -20,10 +20,12 @@ filtercmd=cat
hunks=
foldflags=
showflags=()
+noact=0
while [ "$#" -gt 0 ]; do
case "$1" in
-\#*) hunks="$1" ;;
-t) foldflags="-t" ;;
+ -n) noact=1 ;;
-O) showflags+=(-O "$2"); shift ;;
-*) { echo >&2 "unknown flag '$1'"; exit 1; } ;;
*) break ;;
@@ -32,4 +34,13 @@ while [ "$#" -gt 0 ]; do
done
[ "$#" = 1 ] || { echo >&2 "supports one file only"; exit 1; }
-stg show "${showflags[@]}" "$PATCH" | filterdiff -p1 $hunks -i "$1" | stg fold $foldflags
+getpatch()
+{
+ stg show "${showflags[@]}" "$PATCH" | filterdiff -p1 $hunks -i "$1"
+}
+
+if [ $noact = 1 ]; then
+ getpatch "$1"
+else
+ getpatch "$1" | stg fold $foldflags
+fi
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html