Arup Rakshit [off-list ref] writes:
[...]
Now you can see, that I have created, a new file called *file.txt*, in the
*master branch*.
And here is your basic misunderstanding. You've created file.txt indeed,
but not in the *master branch* (or any branch). You've created it in the
working directory. Only after you add/commit it, will it be "created" in
the branch that is checked out at this time. Until then, git won't touch
the file when you switch between branches.
-- Sergey.