Pruebe esto en su alicerepositorio (antes de presionar):
git config push.default tracking
O configúrelo como predeterminado para su usuario con git config --global ….
git pushel valor predeterminado es el originrepositorio (que normalmente es el repositorio desde el que clonó el repositorio actual), pero no lo hace de forma predeterminada para empujar la rama actual; de manera predeterminada, empuja solo las ramas que existen tanto en el repositorio de origen como en el repositorio de destino.
La push.defaultvariable de configuración (ver git-config (1) ) controla lo git pushque empujará cuando no se le dé ningún argumento "refspec" (es decir, algo después de un nombre de repositorio). El valor predeterminado proporciona el comportamiento descrito anteriormente.
Aquí hay posibles valores para push.default:
nothing
Esto te obliga a proporcionar una "refspec".
matching(el valor predeterminado)
Esto empuja todas las ramas que existen tanto en el repositorio de origen como en el de destino.
Esto es completamente independiente de la rama que está actualmente desprotegida.
upstreamo tracking
(Ambos valores significan lo mismo. El último se desaprobó para evitar confusiones con las ramas de "seguimiento remoto". El primero se introdujo en 1.7.4.2, por lo que tendrá que usar el último si está usando Git 1.7.3.1. )
Estos empujan la rama actual a la rama especificada por su configuración "ascendente".
current
Esto empuja la rama actual a la rama del mismo nombre en el repositorio de destino.
Estos dos últimos terminan siendo los mismos para casos comunes (por ejemplo, trabajando en un maestro local que usa origen / maestro como su flujo ascendente), pero son diferentes cuando la rama local tiene un nombre diferente de su rama "flujo ascendente":
git checkout master
# hack, commit, hack, commit
# bug report comes in, we want a fix on master without the above commits
git checkout -b quickfix origin/master # "upstream" is master on origin
# fix, commit
git push
Con push.defaultigual a upstream(o tracking), el empuje iría a originla rama maestra de ' . Cuando es igual a current, el empuje iría a originla rama de arreglo rápido .
La matchingconfiguración actualizará bareel maestro en su escenario una vez que se haya establecido. Para establecerlo, puedes usar git push origin masteruna vez.
Sin embargo, la upstreamconfiguración (o tal vez current) parece ser una mejor coincidencia para lo que espera que suceda, por lo que es posible que desee probarlo:
# try it once (in Git 1.7.2 and later)
git -c push.default=upstream push
# configure it for only this repository
git config push.default upstream
# configure it for all repositories that do not override it themselves
git config --global push.default upstream
(Nuevamente, si todavía está usando un Git antes de 1.7.4.2, deberá usarlo en trackinglugar de upstream).