Understanding git add and staging area