These command sets are not equivalent.
git pull
is split into two commands:
git fetch
git merge
The problem is, that git fetch requires a remote reference, while git merge requires a tracking reference, this is why the Github help page has:
git fetch upstream
but it has
git merge upstream/master
The merge command will take the upstream/master
branch and merge it into the currently checked out branch (in this case 'master'). But the fetch command doesn't work on a branch, it requires a remote, so when you try:
git pull upstream/master
Git splits this into:
git fetch upstream/master
git merge upstream/master
which will fail on the fetch:
$ git pull upstream/master
fatal: 'upstream/master' does not appear to be a git repository
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.