The screen locks you in. Your commit history hangs there, a mess you need to fix. You call git reset, but the terminal throws back the Git reset screen, asking for the next move.
The Git reset screen appears when an operation needs input before continuing. It’s common when you run interactive commands like git reset --patch or when resolving conflicts. Here, Git lets you choose exactly what to keep, edit, or discard. Each prompt is a decision point. Press y to stage changes, n to skip, q to quit. The choices are blunt because they change history.
Understanding this screen starts with knowing the difference between reset modes:
- Soft reset (
--soft) moves HEAD to a previous commit but keeps changes staged. - Mixed reset (
--mixed) moves HEAD and unstages files. This is the default. - Hard reset (
--hard) moves HEAD and throws away tracked changes. Use with caution.
When you trigger the interactive patch mode, Git breaks changes into hunks, showing them line by line. You decide which hunks to keep. The screen stays until you finish or exit. This mode is precise control over your project history without bulk changes.