- Untracked: any files in the working directory(a checkout or a working copy) that are not in last snapshot and are not in the staging area.
- Unmodified: files in the last snapshot
- Modified: files in the working directory and modified
- Staged(cached, indexed): files in the staging area
State machine
untracked add the file–> staged
unmodified edit the file –> modified
unmodified remove the file –> untracked
modified stage the file –> staged
staged commit the file –> unmodified