title: Remove files from the staging area
body: <p>I have added a bunch of files in my staging area. Now I realize that I want to commit <em>some</em> of those files, but not others (I want to stash the rest, actually). How can I unstage some files, but leave them in the working dir so that I can do other things with them (like stashing)? For the sake of discussion, let's say I have this <code>git status</code>:</p>
  
  <pre><code># On branch develop
  # Changes to be committed:
  #   (use "git reset HEAD &lt;file&gt;..." to unstage)
  #
  #   new file:   app/scripts/vendor/ember-1.0.0-rc.5.js
  #   deleted:    node_modules/grunt-contrib-handlebars/test/expected/partials_use_namespace.js
  #   modified:   package.json
  #   modified:   ../python_modules/config/settings1.py
  #
  </code></pre>
  
  <p>Let's say I want to unstage <code>package.json</code>. How can I do that? I have tried with:</p>
  
  <pre><code>git reset HEAD package.json
  </code></pre>
  
  <p>as suggested by <code>git</code> itself, but has no effect: the file stays in the staging area (bug?).</p>
  
  <p>To be clear, I do not want to loose the changes I have made to <code>package.json</code>: I simply do not want to commit them yet.</p>
  
  <h1>EDIT</h1>
  
  <p>This was a mistake on my side: my git status was so big, I could not see the <em>Changes not staged for commit</em> heading. That is where the unstaged files have been moved to, and that is what I wanted.</p>