title: How git similarity index is calculated?
body: <p>I am new with git and there is something that isn't clear to me.
  How does git internally know if a file is new file or modified file?<br>
  Since git doesn't track files but tracks blobs. Is this related to the similarity index?  </p>
  
  <p>Also I encountered the problem, that when moving the file and modifying it, sometimes git recognizes it as a renamed file and sometimes as a new file.<br>
  In the case of a small file it will recognize it as a new file and deleted.</p>
  
  <p>How can I "trick" git to mark this case as moved file and not a new and deleted (without doing two different commits - one for the move, another for the changes)?</p>