This visual execution shows how git reset commands affect the commit pointer (HEAD), the staging area (index), and the working directory. Starting from a state with three commits, we move HEAD back one commit with three reset types. Soft reset moves HEAD but leaves index and working directory unchanged, so changes remain staged. Mixed reset moves HEAD and resets the index to match the commit, but leaves working directory changes unstaged. Hard reset moves HEAD and resets both index and working directory to the commit, discarding any changes. The tables track these states step-by-step, helping beginners see exactly what changes and when. Key moments clarify common confusions about staging and discarding changes. Quizzes test understanding of index and working directory states after each reset type.