Sebastian Schuberth <sschuberth@xxxxxxxxx> writes: > Me being the reporter of the original msysGit issue #177, I'd like to > clarify that my intention not necessarily was to make > "core.autocrlf=true" affect temporary files (i.e. to "smudge" them), > but to ensure that the files fed into "git diff" are always generated > / acquired in a consistent way, so that they are in fact comparable. Thanks. I think everybody involved in the thread is in agreement with that. > I'd also be happy with a solution that always feeds clean files into > "git diff", although that would probably mean that we could not reuse > working tree files if "core.autocrlf=true" is set. When we generate diff internally, even when we borrow from the work tree, we clean it before using. See diff_populate_filespec(), ll.1900-1915. Borrowing done by diff_tempfile(), which currently does not run clean, and the call to prep_temp_blob() in ll.2030-2035 that gives a temporary file without convert_to_working_tree() are inconsistent, as pointed out by you and Dscho. If you run "git diff <filename>" after cloning, I expect that no temporary files are involved, _unless_ you have some settings that force "git diff" not to use the internal diff. Do you use GIT_EXTERNAL_DIFF? Do you use "textconv" attribute? What external program do you invoke from these mechanisms, and what does it expect to see as its input? The discussion in the last few messages in this thread speculates that the external programs are more likely to expect representations suitable in the work tree, aka "smudged", than "clean" one. It would be nice to get a datapoint from you as the original reporter to confirm or refute that speculation. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html