Fig 1Working directory, staging area, commitClick to add · a to add · c to commitbench 4
The bench: your working directory, where you editThe tray: the staging area, what the next commit takesThe press is git commit: it seals the tray into a crateThe rack is history: one crate per commitA change passes through three places. You edit it on the bench, your working directory. git add moves it to the tray, the staging area, and only what is in the tray goes into the next commit. git commit seals the tray into a crate and puts it on the rack. A change left on the bench is not in the commit, however often you save the file.