GIT · Recovery · 10 min
Pause a draft for an urgent fix
Protect unfinished work while making a separate repair.
Not completedYour task
Stash the notes draft, fix service.conf to timeout=30 and commit it, then restore and finish the draft in a second commit. Leave no stash behind.
What you’re aiming for
- The hotfix and draft are separate commits.
- notes.txt contains the unfinished line and the new review line.
- service.conf contains timeout=30 and the stash list is empty.
1. Prepare your practice folder
Use Git 2.28 or newer. The setup commands below use a Bash-compatible shell: Git Bash on Windows, or Bash on Linux/macOS.
Create a new, empty folder for this exercise. If that name already exists, choose another new name. Continue only after you’re inside the new folder.
mkdir opsrung-git-stash-interrupted-work && cd opsrung-git-stash-interrupted-work
Run these setup commands in that folder:
git init --initial-branch=main git config --local user.name 'Practice Learner' git config --local user.email 'practice@example.invalid' printf '%s\n' 'A disposable OpsRung practice repository.' > README.txt git add -- README.txt git commit -m 'Start practice' printf '%s\n' 'timeout=0' > service.conf printf '%s\n' 'Project notes.' > notes.txt git add service.conf notes.txt git commit -m 'Add configuration and notes' printf 'Unfinished draft.\n' >> notes.txt
Only if your personal Git settings interfere
You can normally skip this. If a commit asks for a signing key, runs a custom hook, or changes line endings unexpectedly, these repository-local overrides keep this disposable exercise independent of those settings.
git config --local commit.gpgsign false git config --local core.autocrlf false git config --local core.hooksPath .git/practice-no-hooks
Retry the failed command afterward. These settings apply only inside this practice repository.
2. Try the task
Work toward the goal above. Start by inspecting the files or resources, then use a hint if you need one.
Hint 1
A stash can temporarily clear the working tree.
Hint 2
Commit the urgent fix before restoring the draft.
Hint 3
git stash pop restores and removes the saved entry.
3. Review your result
Use these commands to look at your result and compare it with the goals. The website does not run or verify them.
git status git log --oneline --graph --all -12
What you should see
- The hotfix and draft are separate commits.
- notes.txt contains the unfinished line and the new review line.
- service.conf contains timeout=30 and the stash list is empty.
If your result differs: Work only in this exercise’s repository. Compare the branch, files, and history with every goal before marking complete.
Compare with one possible solution
git stash push -m 'Pause notes draft' printf '%s\n' 'timeout=30' > service.conf git add service.conf git commit -m 'Fix service timeout' git stash pop printf 'Ready for review.\n' >> notes.txt git add notes.txt git commit -m 'Finish notes draft'
Other approaches are fine if you reach the same goal. Opening this solution does not mark the exercise complete.
Finished this exercise?
You decide when you’re done. Your choice is saved in this browser, and you can change it later.