2010-03-16 15 views
9

Estoy tratando de encontrar cómo hacer referencia al commit de inicio de rama desde el script. Me refiero a la confirmación de la rama en la que se bifurcó.Referencia Git branch start commit

Además, espero que funcione para la historia hecha de svn repo.

This post acaba de dar el primer commit de la creación de repositorio y no tiene la función de inicio de compilación commit.

Respuesta

14

Lo que estamos buscando es el comando merge-base:

git merge-base master feature-branch 

imprimirá la mejor ancestro común de esas dos ramas, es decir, donde se bifurcan aparte. (El documentation tiene imágenes bastante bonitas para aclarar algunos de los casos interesantes)

+0

Gracias. ¡Definitivamente es lo que necesito! – MageSlayer

+2

Tenga en cuenta que si se fusionó entre su rama y el tronco en cualquier punto, se devolverá una matriz de esa fusión en lugar de la rama 'original'. Sin embargo, no estoy seguro de que obtendrás una mejor respuesta. –

+2

@Andrew: depende del uso exacto, pero generalmente eso es lo que quieres, de todos modos, no el original. Si realmente quiere el original, puede usar la opción '-a/--todo' y tomar el primero en lugar del último. – Cascabel