Hablando funcionalmente, en un flujo de trabajo descentralizado, no veo la diferencia entre las opciones simpley la configuración de configuración.currentpush.default
currentempujará la rama actual a una rama con el mismo nombre en el control remoto especificado. simplehará efectivamente lo mismo para los controles remotos rastreados y no rastreados para la rama actual (aplica nombres de rama idénticos en ambos casos).
¿Alguien puede explicar alguna diferencia importante entre los dos para los flujos de trabajo descentralizados que me faltan?
git
git-push
git-config
puntero.void
fuente
fuente

Respuestas:
La diferencia es que con
simple,git push(sin pasar una especificación de referencia) fallará si la rama actual no rastrea una rama ascendente remota (incluso si existe una rama con el mismo nombre en la remota):Por otro lado,
currentno le importa si la rama actual rastrea o no un flujo ascendente, solo quiere empujar a cualquier rama que tenga el mismo nombre:La documentación
De la documentación de configuración de Git :
fuente
currentsupe qué control remoto elegir? Si no tiene una rama de seguimiento configurada, ¿hacia dónde empuja?La diferencia es que
simpleempuja a su rama de seguimiento si tiene el mismo nombre, mientrascurrentque empuja a una rama del mismo nombre independientemente de cualquier rama de seguimiento:fuente