title: Why git keeps showing my changes when I switch branches (modified,added, deleted files) no matter if I run git add or not?
body: <p>I'm really new to git and I've been trying to understand why git keeps showing whatever I changed in one branch in another branch when I run git checkout to switch between branches First I tried not using git add and didn't work. However, I tried then using git add, but didn't fix the problem. I'm not using git commit yet.</p>
  
  <p>This is basically what I'm doing:</p>
  
  <pre><code>$ git clone &lt;a_repository&gt;  
  $ git branch  
  * master  
  $ git branch testing  
  $ git checkout testing  
  ...edit a file, add a new one, delete...  
  $ git status  
      # On branch testing  
      # Changed but not updated:  
      #   (use "git add/rm &lt;file&gt;..." to update what will be committed)  
      #   (use "git checkout -- &lt;file&gt;..." to discard changes in working directory)  
      #  
      #       deleted:    file1.txt  
      #  
      # Untracked files:  
      #   (use "git add &lt;file&gt;..." to include in what will be committed)  
      #  
      #       file2.txt  
  no changes added to commit (use "git add" and/or "git commit -a")  
  $ git branch  
    master  
  * testing  
  $ git checkout master  
  D       file1.txt  
  Switched to branch 'master'  
  $ git status  
      # On branch master  
      # Changed but not updated:  
      #   (use "git add/rm &lt;file&gt;..." to update what will be committed)  
      #   (use "git checkout -- &lt;file&gt;..." to discard changes in working directory)  
      #  
      #       deleted:    file1.txt  
      #  
      # Untracked files:  
      #   (use "git add &lt;file&gt;..." to include in what will be committed)  
      #  
      #       file2.txt  
  no changes added to commit (use "git add" and/or "git commit -a")  
  </code></pre>
  
  <p>I thought that, while using branches, whatever you do in one branch, it's invisible to all the other branches. Is not that the reason of creating branches?</p>
  
  <p>I tried using "git add" but the changes are visible in both branches. 
  Do I need to run "git commit" before switching between branches to avoid this? </p>