2011-03-17 9 views
53

Aquí hay muchas preguntas sobre que Git dice que las personas se adelantan a una sucursal remota por X commits, y quieren que se detenga.Git no muestra la cantidad de confirmaciones antes del origen que tengo, y lo quiero

Tengo el problema opuesto. Quiero que Git me diga cuántos compromisos tengo por delante, pero no es así.

Cuando creé mi repositorio remoto remoto primero, y luego cloné desde allí, esto funcionó. En mi caso actual, creé el repositorio local primero y luego lo cloné (desnudo) en el control remoto.

Esto configuró mi repositorio local como el control remoto para el repositorio desnudo. Pero lo eliminé y agregué manualmente la referencia del repositorio remoto a mi local. Empujar funciona bien. Pero no veo el mensaje "Estás adelantado por X confirma". ¿Cómo puedo obtenerlo?

+1

+1 gran pregunta (amo el título) ... Necesito esto también –

Respuesta

71

git branch --set-upstream local origin/remote

locales y remotos son los nombres de su resp local. ramas remotas.

En Git versión 1.8 y posterior, es aún más fácil. Asegúrese de que está en la sección local, y luego:

git branch --set-upstream-to origin/remote

+0

perfecto, funciona muy bien para mí –

+0

Correcto. Agregado para aclarar – Bombe

+2

Tendrás que ejecutar 'git fetch origin' para obtener la información más reciente. – dunedain289

6

he encontrado que hay una manera de hacer que este comportamiento por defecto:

git config --global branch.autosetupmerge always 

pesar de su nombre, esto no lo hace force para fusionar siempre las ramas; aún puede volver a establecer la base si lo desea.

asegúrese de que cada vez que cree una nueva bifurcación, podrá ver automáticamente cuántas confirmaciones es diferente de la sucursal desde la que se creó.

+1

Nota: En las versiones actuales de git, esta opción se establece de forma predeterminada en true de todos modos (ver man git-config). Entonces solo necesita configurarlo si lo cambió antes (o posiblemente en versiones anteriores de git). – sleske

+0

@sleske, aunque es correcto, hay una distinción sutil entre 'true' y' always'. 'always' también muestra el avance/retroceso de las sucursales locales, no solo las sucursales remotas. Me parece útil configurarlo en 'siempre'. –

+0

@NickDesaulniers: Es cierto, eso es algo que pasé por alto. – sleske

Cuestiones relacionadas