git diff –numstat FOLDER1 FOLDER2 works strange when run from a git controlled folder. The output shrinks some symbols in the diff file paths. For example: Create a folder and call git init, for example: `C:\test`. mkdir C:\test cd C:\test git init Create two folders with to diff. For example: ` C:\diff`, `C:\base` and put a file in them with a diff (for example `1.txt` with `1` in base and `1.txt` with 2 in diff). mkdir C:\base mkdir C:\diff echo. 12>C:\base\1.txt echo 13>C:\diff\1.txt Run git diff: pushd C:\ git.exe diff --numstat "C:\diff" "C:\base" Output will be: 1 1 "C:\\diff/1.txt" => "C:\\base/1.txt" Now move into C:\test and run it again: pushd C:\test git.exe diff --numstat "C:\diff" "C:\base" 1 1 "C:\\diff/1.txt" => "C:\\base/1.txt" Now create a folder in `C:\test`, for example `one`: mkdir one cd one git.exe diff --numstat "C:\diff" "C:\base" output will be: 0 1 {iff => ase}/1.txt So (folder_name_length) symbols were cut from the path (“C:\\d” and “C:\\b”). Is any way to avoid that? I have checked several git versions and they all do the same. Commands to repro: mkdir C:\test cd C:\test git init mkdir C:\base mkdir C:\diff echo. 12>C:\base\1.txt echo 13>C:\diff\1.txt pushd C:\ git.exe diff --numstat "C:\diff" "C:\base" pushd C:\test git.exe diff --numstat "C:\diff" "C:\base" mkdir one cd one git.exe diff --numstat "C:\diff" "C:\base" Best Regards, Sergey Andrenko