The book Pro Git says that the staging area is just a list, or index, that says which files will be committed when a git commit
is done, and now the name inde
The index
is like an out basket of completed work. At any point you can add
a (part) completed file to that out basket and it will replace the previous copy with your current copy, so that when you finally decide to commit
it will use the contents of that out basket (the current index
) to create the commit.
In addition your earlier add
will have create a blob object within the repo that can be found if required via the various logs. After a while (30 days+) it will disappear with gc
.