Git resembles me bizarre version of Lights Out game.
There are lights named "current head", "working tree", "staging area", "commit tree", "remote refs", etc., and a bunch of commands each of them flips some of the lights (but never just one, that would be too easy), and your goal is to figure out the right combination of commands to use.
git switch touches working tree and current head;
git pull touches commit tree, remote refs, and working tree;
git reset touches current head and staging area; and so on.