git switch vs checkout
git checkout has been separated into two to clarify its uses:
- git switch: used to change branches, as git checkout <branchname> does
- git restore: used to reset files to certain revisions, as git checkout --<path_to_file> does