For instance, if you set your diff/mergetool to meld and you don't have it
installed:
> git difftool
Viewing (1/1): 'blah'
Launch 'meld' [Y/n]? y
/home/ttanner/bin/meld[8]: /opt/swt/bin/meld: not found
> echo $?
0
> /home/ttanner/bin/meld
/home/ttanner/bin/meld[8]: /opt/swt/bin/meld: not found
> echo $?
127
or
> env DISPLAY=wibble git difftool
Viewing (1/1): blah'
Launch 'xxdiff' [Y/n]? y
xxdiff: cannot connect to X server wibble
> echo $?
0
> env DISPLAY=wibble xxdiff thisfile thatfile
xxdiff: cannot connect to X server wibble
> echo $?
1
and this one (with DISPLAY unset because it was being run elsewhere)
> git mergtool
Normal merge conflict for 'blah:
{local}: modified file
{remote}: modified file
Could not find ':' in DISPLAY: yeah, right
XIO: fatal IO error 73 (Connection reset by peer) on X server "server:66.0"
after 0 requests (0 known processed) with 0 events remaining.
> echo $?
0
which last looked like a successful merge to a script, because it returned
0.N�����r��y����b�X��ǧv�^�){.n�+����ا���ܨ}���Ơz�&j:+v�������zZ+��+zf���h���~����i���z��w���?�����&�)ߢf