From: Junio C Hamano Date: Wed, 12 Dec 2007 19:07:40 GMT Subject: Re: [PATCH (amend)] diff: Make numstat machine friendly also for renames (and copies) Message-ID: <7v4pen91fn.fsf@gitster.siamese.dyndns.org> In-Reply-To: <200712121131.01471.jnareb@gmail.com> Jakub Narebski writes: > BTW. I have noticed something strange with current (after my two > patches) diffstat code: > > 3606:[gitweb/web@git]# ./git diff-tree -C -C -r --stat gitweb/test~8 > 0456a2ba58efb0e1d5f7421d5a8a2278e3b15ebc > .../test/file with spaces\tand\ttabs" | 4 +++- > 1 files changed, 3 insertions(+), 1 deletions(-) > 3607:[gitweb/web@git]# ./git diff-tree -C -C -r --numstat gitweb/test~8 > 0456a2ba58efb0e1d5f7421d5a8a2278e3b15ebc > 3 1 gitweb/test/file with spaces "gitweb/test/file with spaces\tand\ttabs" If you are wondering about the lack of => in --stat when --numstat is showing rename, there is nothing strange going on. "filename scaling" done in --stat happens way later than pprint_rename() in the current code structure (essentially, it chomps at the last slash to keep the long "path" fit within the given space). --stat (not --numstat) is for human consumption and showing longer part of the name of postimage is more important if we do not have enough room, and most tools that enable rename use --summary with --stat anyway, so the rename information for such an oddball long path can be found out elsewhere in the output if needed.