From: Bert Wesarg <bert.wesarg@googlemail.com>
To: Uwe Kleine-Koenig <u.kleine-koenig@pengutronix.de>
Cc: git@vger.kernel.org, pasky@suse.cz,
martin f krafft <madduck@madduck.net>,
Bert Wesarg <bert.wesarg@googlemail.com>
Subject: [TopGit RFC/PATCH v3 11/12] tg-patch: use ui diff when pager is active
Date: Wed, 20 Oct 2010 22:17:56 +0200 [thread overview]
Message-ID: <cb28181bc3cc0cfbf19926aa9dabf3d1d1f643b0.1287605587.git.bert.wesarg@googlemail.com> (raw)
In-Reply-To: <8bd4da13a1c992ece87b4c742d75dad3b6776acf.1287605587.git.bert.wesarg@googlemail.com>
In-Reply-To: <52df5d1de969f474d93c4dce320edc657bb866dc.1287605587.git.bert.wesarg@googlemail.com>
diff-tree should be used to generate patches meant for submission
(or non-human consumption). But for pure human inspection some 'eye-candy'
effects could take considerations. Like color, renames, mnemonicprefix,
or noprefix. External diff driver or word-diff. All these are in effect
by using the diff command, when configured in your git config file.
diff-tree does not honor these configure options but its possible to give
them as command line options too. Selecting the plumbing or ui diff driver
is best done automatically, in my opinion. And an active pager is my best
bet that a human will consume the output.
Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
---
I will probably add an overwrite command switch (to enable ui mode even
without an active pager shortly. Because I sometimes pipe the output for
inspection into my editor.
tg-patch.sh | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/tg-patch.sh b/tg-patch.sh
index 9def6e5..dcce672 100644
--- a/tg-patch.sh
+++ b/tg-patch.sh
@@ -70,7 +70,12 @@ t_tree=$(pretty_tree "$name" $head_from)
if [ $b_tree = $t_tree ]; then
echo "No changes."
else
- git diff-tree -p --stat $b_tree $t_tree
+ # use the ui diff command when the pager is active
+ diff_command=diff
+ [ "x$GIT_PAGER_IN_USE" = "x1" ] ||
+ diff_command=diff-tree
+
+ git $diff_command -p --stat $b_tree $t_tree
fi
echo '-- '
--
1.7.3.1.1069.g89486
next prev parent reply other threads:[~2010-10-20 20:19 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-10-20 20:17 [TopGit PATCH v3 01/12] provide a global temporary directory Bert Wesarg
2010-10-20 20:17 ` [TopGit PATCH v3 02/12] cat_file: take -i/-w parameters Bert Wesarg
2010-10-20 20:17 ` [TopGit PATCH v3 03/12] pretty_tree: globalize and respect -i/-w options Bert Wesarg
2010-10-20 20:17 ` [TopGit PATCH v3 04/12] branch_empty: use pretty_tree and therefore respect -i/-w Bert Wesarg
2010-10-20 20:17 ` [TopGit PATCH v3 05/12] tg-path: use pretty_tree and diff-tree to generate the patch Bert Wesarg
2010-10-20 20:17 ` [TopGit PATCH v3 06/12] list_deps: accept -i/-w Bert Wesarg
2010-10-20 20:17 ` [TopGit PATCH v3 07/12] tg-summary: " Bert Wesarg
2010-10-20 20:17 ` [TopGit PATCH v3 08/12] tg-mail: " Bert Wesarg
2010-10-20 20:17 ` [TopGit PATCH v3 09/12] tg-files: list files changed by the topic branch Bert Wesarg
2010-10-20 20:17 ` [TopGit PATCH v3 10/12] tg-prev/tg-next: commands to explore dependencies Bert Wesarg
2010-10-20 20:17 ` Bert Wesarg [this message]
2010-10-20 20:17 ` [TopGit RFC/PATCH v3 12/12] tg-patch: simulate mnemonic prefixes Bert Wesarg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cb28181bc3cc0cfbf19926aa9dabf3d1d1f643b0.1287605587.git.bert.wesarg@googlemail.com \
--to=bert.wesarg@googlemail.com \
--cc=git@vger.kernel.org \
--cc=madduck@madduck.net \
--cc=pasky@suse.cz \
--cc=u.kleine-koenig@pengutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).