title: What will `* text=auto eol=lf` in gitattributes do?
body: <p>We have this in our .gitattributes file:</p>
  
  <pre><code>* text=auto eol=lf
  </code></pre>
  
  <p>I'd like to precisely understand what this does.</p>
  
  <p>The first part is <code>text=auto</code>. From the <a href="http://git-scm.com/docs/gitattributes" rel="noreferrer">documentation</a>:</p>
  
  <blockquote>
    <p>This ensures that all files <strong>that Git considers to be text</strong> will have normalized (LF) line endings in the repository.</p>
  </blockquote>
  
  <p>The important part is that Git does the normalization only for files that it detects as text files.</p>
  
  <p>However, I'm not sure about the <code>eol=lf</code> part. I would think that it will also do the normalization only for text files but I can't find support for it in the documentation and we had an instance when our PNG files were normalized too, making them invalid.</p>
  
  <p>Is there a settings like the above that would basically say "do the normalization in <em>both directions</em> for <em>text files</em>, and leave binary files alone"?</p>