Re: [PATCH 3/3] diff: make "too many files" rename warning optional
From: Ramsay Jones <hidden>
Date: 2016-06-15 22:44:34
Jeff King wrote:
On Sat, May 03, 2008 at 06:34:31PM +0100, Ramsay Jones wrote:quoted
The git command issued by gitk appears to be: git diff-tree -r -p -C --no-commit-id -U3 1d6aeb410dc19893adbc0209bcf859f35ff1c7d6Hrm. Is gitk on cygwin somehow squishing stderr and stdout together? Or does gitk in general look at what happens on stderr?
maybe. After further testing, the above "git diff-tree..." does indeed issue the warning on stderr; on both cygwin and Linux. [I forgot to type ./git-diff-tree as I had not installed the new git yet, since it does not pass "make test". That is a different problem for another day...] It appears that gitk on Linux is quite happy with that message on stderr, but on cygwin it chokes.
Because while I am happy that removing this message fixes your problem, it is a little disconcerting to think that we can break gitk just by issuing a warning diagnostic on stderr.
Indeed.
Also note that the warning is issued twice, since gitk issues that same
command twice; viz:
$ GIT_TRACE=/home/ramsay/git-trace gitk --all & # exit asap
$ cat /home/ramsay/git-trace
trace: built-in: git 'config' '--get' 'i18n.commitencoding'
trace: built-in: git 'rev-parse' '--git-dir'
trace: built-in: git 'rev-parse' '--no-revs' '--no-flags' '--all'
trace: built-in: git 'rev-parse' '--is-inside-work-tree'
trace: built-in: git 'show-ref' '-d'
trace: built-in: git 'symbolic-ref' 'HEAD'
trace: built-in: git 'log' '--no-color' '-z' '--pretty=raw' '--topo-order' '--parents' '--boundary' '--all' '--'
trace: built-in: git 'diff-index' '--cached' 'HEAD'
trace: built-in: git 'rev-parse' '--git-dir'
trace: built-in: git 'diff-tree' '-r' '--no-commit-id' '1d6aeb410dc19893adbc0209bcf859f35ff1c7d6'
trace: built-in: git 'diff-files'
trace: built-in: git 'diff-tree' '-r' '-p' '-C' '--no-commit-id' '-U3' '1d6aeb410dc19893adbc0209bcf859f35ff1c7d6'
trace: built-in: git 'diff-tree' '-r' '-p' '-C' '--no-commit-id' '-U3' '1d6aeb410dc19893adbc0209bcf859f35ff1c7d6'
$
NOTE: I get exactly the same trace on Linux and cygwin.
As a quick-fix, I added a "-l300" parameter to the above git command in ~/bin/gitk.
[diff.renamelimit only affects git-diff]
All the Best,
Ramsay Jones