Why git can't do hard/soft resets by path?
问题 $ git reset -- <file_path> can reset by path. However, $ git reset (--hard|--soft) <file_path> will report an error like below: Cannot do hard|soft reset with paths. 回答1: Because there's no point (other commands provide that functionality already), and it reduces the potential for doing the wrong thing by accident. A "hard reset" for a path is just done with git checkout HEAD -- <path> (checking out the existing version of the file). A soft reset for a path doesn't make sense. A mixed reset