We’re not sure why this isn’t on by default. In Photoshop, go to the History palette, select the indicated area, and choose “History Options”. Then in the next screen, check “Allow Non-Linear History”.
Deleting a “state” deletes that state and those that came after it. If you choose the Allow Non-Linear History option, deleting a state deletes only that state.