Santi Béjar [off-list ref] writes:
It makes git-parse-remote.sh and almost all git-fetch independent
of the merge logic.
git-fetch fetches the branches from the remote and saves this
information in .git/FETCH_FETCHED, and at the end it generates
the file .git/FETCH_HEAD.
The current merge behaviour is unchanged.
I overlooked your earlier huge testcase patch, but I noticed it
does not include any test that fetches an annotated tag that
points at a commit or a non-commit, nor an unannotated tag that
is a tree or a blob. I am too tired to check them right now,
but are you sure you are not regressing with them?
It is sometimes handy to be able to say:
$ git fetch git-gui tag spearce-gpg-pub
$ git cat-file -p FETCH_HEAD