title: Difference between `git rm --cached` and `git update-index --assume-unchanged`?
body: <p>I do not understand the difference between <code>git rm --cached</code> and <code>git update-index --assume-unchanged</code>.  </p>
  
  <p>I'm aware that <code>git rm --cached  &lt;file&gt;</code> will remove a file from the staging area.</p>
  
  <p>And, I know that <code>git update-index  --assume-unchanged &lt;file&gt;</code> also does this.  </p>
  
  <p>I've also seen both commands offered as suggestions to similar questions here on SO.  </p>
  
  <p>Is there another affect of either of these two commands that makes them different?</p>