Re: [TopGit PATCH 10/10] [RFC] tg-patch: simulate mnemonic prefixes
- From
Bert Wesarg <bert.wesarg@googlemail.com>
- Date
- Oct 9, 2010, 21:03 UTC
- Message-ID
- <AANLkTinzjwt6FAE2kau5M5MAWMAJ-az=YYxN7ehzq37c@mail.gmail.com>
- In-Reply-To
- <20101009204640.GP29673@pengutronix.de>
2010/10/9 Uwe Kleine-König <u.kleine-koenig@pengutronix.de>:
Show 41 quoted lines
> On Fri, Oct 08, 2010 at 09:58:08AM +0200, Bert Wesarg wrote:
>> b/ is for base, i/ and w/ correspond to -i/-w and t/ is the committed
>> topic.
>>
>> Signed-off-by: Bert Wesarg <bert.wesarg@googlemail.com>
>> ---
>> tg-patch.sh | 8 ++++++--
>> 1 files changed, 6 insertions(+), 2 deletions(-)
>>
>> diff --git a/tg-patch.sh b/tg-patch.sh
>> index dcce672..c8ad723 100644 tg-patch.sh
>> --- a/tg-patch.sh
>> +++ b/tg-patch.sh
>> @@ -6,7 +6,7 @@
>> name=
>>
>> head_from=
>> -
>> +dst_prefix="t/"
>>
>> ## Parse options
>>
>> @@ -15,7 +15,8 @@ while [ -n "$1" ]; do
>> case "$arg" in
>> -i|-w)
>> [ -z "$head_from" ] || die "-i and -w are mutually exclusive"
>> - head_from="$arg";;
>> + head_from="$arg"
>> + dst_prefix="${arg#-}/";;
>> -*)
>> echo "Usage: tg [...] patch [-i | -w] [NAME]" >&2
>> exit 1;;
>> @@ -72,6 +73,9 @@ if [ $b_tree = $t_tree ]; then
>> else
>> # use the ui diff command when the pager is active
>> diff_command=diff
>> + if $(git config --bool diff.mnemonicprefix); then
>> + diff_command="$diff_command --src-prefix=b/ --dst-prefix=$dst_prefix"
>> + fi
> Do I assume right, that diff.mnemonicprefix is topgitish only? Maybe
> it should go then into a topgit namespace?No. it is from git. From the manual:
diff.mnemonicprefix
If set, git diff uses a prefix pair that is different from the
standard "a/" and "b/" depending on what is being compared. When
this configuration is in effect, reverse diff output also swaps the
order of the prefixes: git diff
compares the (i)ndex and the (w)ork tree; git diff HEAD
compares a (c)ommit and the (w)ork tree; git diff --cached
compares a (c)ommit and the (i)ndex; git diff HEAD:file1 file2
compares an (o)bject and a (w)ork tree entity; git diff --no-index a b
compares two non-git things (1) and (2).And it is only a diff ui option too. I thought to take c/ for the committed case for us too, but I have also no strong opinion about t/ either.
Show 6 quoted lines
> > Hmm, nice idea, the only thing about it I don't like ad hoc is that b/ > is already used by default and so it might be confusing. OTOH you need > to enabled it in the config, ... Hmm, will think about it. > > Uwe