I know there are a ton of questions/answers similar to this one, however I could not find a specific answer to this problem. We are a .net shop and are using git.
I
You can try and test the -crlf
attribute in your .gitattributes
file:
*.cs -crlf
The .gitattributes man page also mentions -text
, but that would make your source files as binary (no diff).
Otherwise, core.eol are directives to use to control eol style.
It is more precise than core.autocrlf, which is presented here.
You cannot ignore types of filechanges for git status
. You can use .gitignore to ignore entire files. And you can use the various whitespace options to transform what is committed, what is highlighted (in red) or shown at all in the diff and commit views.
The reasons you cannot ignore these filechanges are:
In short, you probably need to fix your other processes or develop clean-up post-processes. Alternatively you could use:
git diff-files --name-status --ignore-space-at-eol
This is not a perfect analogue of status proper, but it might be enough for your needs. For convenience, you can even build a git-alias
'd "statusx" command by adding to your .gitconfig:
[alias]
statusx = diff-files --name-status --ignore-space-at-eol
There are some additional whitespace options if that proves inadequate: --ignore-space-change
and --ignore-all-space
. See git diff --help
for more detail.