Re: [PATCH (amend)] diff: Make numstat machine friendly also for renames (and copies)
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:43:58
Jakub Narebski [off-list ref] 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.