git: why can't I delete my branch after a squash merge? : <p>I have a git repo with <code>mainline</code> (equivalent to <code>master</code>) and some local feature branches.  For example:</p>

<pre><code>$ git branch
* mainline
  feature1
  feature2
  feature3
</code></pre>

<p>When I do the following, I am able to squash merge all of my edits in a feature branch into one commit to <code>mainline</code>:</p>

<pre><code>$ git checkout mainline
$ git pull
$ git checkout feature1
$ git rebase mainline
$ git checkout mainline
$ git merge --squash feature1
$ git commit
$ git push
</code></pre>

<p>My question is, at this point, when I try to delete the <code>feature1</code> branch, it tells me it is not fully merged:</p>

<pre><code>$ git branch -d feature1
error: The branch 'feature1' is not fully merged.
If you are sure you want to delete it, run 'git branch -D feature1'.
</code></pre>

<p>What causes this error? I thought <code>git merge --squash feature1</code> merged <code>feature1</code> into <code>mainline</code>.</p>
