Q:

How does git fetch resolve the remote repository?

If I run git fetch , how does git resolve the remote ?
From git fetch doc ,

When no remote is specified, by default the origin remote will be
  used, unless there’s an upstream branch configured for the current
  branch.

Does that mean it will consult branch.branchName.remote config value like git push ? 
It is not very clear to me what does it mean  ...unless there’s an upstream branch configured for the current branch .The doc does not explicitly says what if upstream is configured ?
For more details  : Run git push, pull and fetch without refspec argument

A:

As @phd posted in the comments and as verified by @torek in the comments in reference link, I am posting answer on their behalf.
When no remote is specified, by default the origin remote will be used, unless there’s an upstream branch configured for the current branch which means if there is a remote tracking branch configured for that branch , then it will have the branch.<currentBranchName>.remote config value which it will consult.
The behaviour is similar to git push for finding the repository when not mentioned explicitly.

