¿Cómo hacer git repo recordar todos los mandos a distancia?

Tengo un repositorio git que es un tenedor de otro repositorio. Como regla, normalmente agregaré un control remoto llamado upstream, que es el repositorio original del que formé parte.

$ git remote -v
origin [email protected]:skela/awesomeproject.git (fetch)
origin [email protected]:skela/awesomeproject.git (push)
upstream git://github.com/bob/awesomeproject.git (fetch)
upstream git://github.com/bob/awesomeproject.git (push)

¿Hay alguna manera de hacer que este control remoto adicional persista en los clones? Digamos que elimino mi repositorio local y hago un:

git clone [email protected]:skela/awesomeproject.git

Y ahora vuelvo a comprobar mis mandos a distancia:

$ git remote -v
origin [email protected]:skela/awesomeproject.git (fetch)
origin [email protected]:skela/awesomeproject.git (push)

¡Mi control remoto ha desaparecido!

¿Cómo me aseguro de que mi repositorio de git siempre mantenga estos 2 alias remotos?

Edición: simplemente agregando la razón principal por la que quiero hacer esto para dar forma a algunas de las respuestas por un camino aceptable;)

El objetivo es tener una rama en mi repositorio que rastree al maestro del upstream.

[remote "upstream"]
    url = git://github.com/bob/awesomeproject.git
    fetch = +refs/heads/*:refs/remotes/upstream/*
[branch "father"]
    remote = upstream
    merge = refs/heads/master

En otras palabras, la rama "padre" que se encuentra en mi repositorio rastrea el control remoto llamado rama principal en sentido ascendente.

Todo funciona muy bien una vez que lo configuré, pero tan pronto como vuelvo a clonar el repositorio, la rama "padre" apunta al origen en lugar de a la corriente ascendente.

Respuestas a la pregunta(3)

Su respuesta a la pregunta