When output is not redirected to a file, git brings up the pager for only the diff, which can be confusing, so disable with --no-pager. git-diff is a porcelain command and thus subject to color options. Use --no-color, to avoid the patch being corrupted with terminal escape characters when color.diff=always. Signed-off-by: Jonas Fonseca <fonseca@xxxxxxx> --- tg-patch.sh | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) Jonas Fonseca <fonseca@xxxxxxx> wrote Thu, Nov 20, 2008: > Signed-off-by: Jonas Fonseca <fonseca@xxxxxxx> > > --- > README[m | 11 [32m+++++[m[31m------[m > 1 files changed, 5 insertions(+), 6 deletions(-)[m > > [1mdiff --git a/README b/README[m > [1mindex 5bfe3ee..9e291da 100644[m > [1m--- a/README[m > [1m+++ b/README[m I hope this demonstrates the point of this patch. ;) diff --git a/tg-patch.sh b/tg-patch.sh index 97338ab..c2f1b56 100644 --- a/tg-patch.sh +++ b/tg-patch.sh @@ -34,7 +34,7 @@ git diff-tree --name-only "$base_rev" "$name" | fgrep -vx ".topdeps" | fgrep -vx ".topmsg" >"$git_is_stupid" || : # fgrep likes to fail randomly? if [ -s "$git_is_stupid" ]; then - cat "$git_is_stupid" | xargs git diff --patch-with-stat "$base_rev" "$name" -- + cat "$git_is_stupid" | xargs git --no-pager diff --no-color --patch-with-stat "$base_rev" "$name" -- else echo "No changes." fi -- tg: (f17218e..) jf/patch-no-pager-and-color (depends on: master) -- Jonas Fonseca -- 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