Skip to content
  • Junio C Hamano's avatar
    git-diff --numstat -z: make it machine readable · f604652e
    Junio C Hamano authored
    
    
    The "-z" format is all about machine parsability, but showing renamed
    paths as "common/{a => b}/suffix" makes it impossible.  The scripts would
    never have successfully parsed "--numstat -z -M" in the old format.
    
    This fixes the output format in a (hopefully minimally) backward
    incompatible way.
    
     * The output without -z is not changed.  This has given a good way for
       humans to view added and deleted lines separately, and showing the
       path in combined, shorter way would preserve readability.
    
     * The output with -z is unchanged for paths that do not involve renames.
       Existing scripts that do not pass -M/-C are not affected at all.
    
     * The output with -z for a renamed path is shown in a format that can
       easily be distinguished from an unrenamed path.
    
    This is based on Jakub Narebski's patch.  Bugs and documentation typos
    are mine.
    
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    f604652e