Qual é a diferença entre o git push.default = current e o push.default = upstream?

A página man do git-config lista estas opções para push.default:

nothing - do not push anything.
matching - push all matching branches. All branches having the same name in both ends are considered to be matching. This is the default.
upstream - push the current branch to its upstream branch.
tracking - deprecated synonym for upstream.
current - push the current branch to a branch of the same name.

Na maioria dos casos, eu diria que empurrar para o branch upstream de um branch seria o mesmo que empurrar para um branch com o mesmo nome, já que o branch upstream normalmente teria o mesmo nome e desde o branch de mesmo nome ("current" ) normalmente (ou sempre, por definição?) estaria a montante. Então qual a diferença?

ATUALIZAR: A man page do git-config foi atualizado (como seria de se esperar), então as distinções feitas pode ser muito mais claro agora.

questionAnswers(2)

yourAnswerToTheQuestion