2011-04-29 11 views
15

¿Cuál es el flujo de trabajo perferred para extraer una rama de publicación publicada desde el repositorio central utilizando git-flow?git-flow: cómo extraer la rama de liberación desde el origen?

por ejemplo:
Mike hizo una rama de lanzamiento, publicó a través de "la liberación del flujo git publican 1.0"
Jane gustaría trabajar en esa rama de lanzamiento también, ¿cómo se tire de ella desde el repositorio central para seguir trabajando con git flow en esa rama en particular?

  • crear la rama sí misma a nivel local a través git flow release start 1.0 y luego git pull?
  • crear una rama de seguimiento a nivel local a través de git con git checkout -b release/1.0 origin/release/1.0 y continuar desde allí (Cómo funciona el flujo de git en la rama de esta manera?)

Respuesta

9

Todo lo que se necesita es la creación de una rama local de seguimiento, sin git-flow comandos específicos son necesarios. Git-flow aparentemente solo se preocupa por el nombre de la rama y si está prefijado con la cadena "lanzar /".

Por lo tanto, configurar una sucursal de seguimiento local como git branch --track release/1.5 origin/release/1.5 es todo lo que hay que hacer.

1

Una vez git flow release publish se hace, puede hacer lo siguiente:

git fetch -q “origin” “release1.0” 
git branch –no-track “release1.0” FETCH_HEAD 
git checkout -q “release1.0” 

Y a continuación, puede empezar a tirar:

git pull “origin” “release1.0” 
9

git flow release (y función) tienen un comando de "pista" para simplificar lo que estás tratando de hacer. Para establecer una sucursal de seguimiento local para una rama que ya ha sido publicada, y cambiar a ella, simplemente hacer esto:

git flow release track 1.0 

o

git flow feature track my-feature-branch 

Aquí está el extracto del código the gitflow source for the release "track" command:

cmd_track() { 
    parse_args "[email protected]" 
    require_version_arg 

    # sanity checks 
    require_clean_working_tree 
    require_branch_absent "$BRANCH" 
    git_do fetch -q "$ORIGIN" 
    require_branch "$ORIGIN/$BRANCH" 

    # create tracking branch 
    git_do checkout -b "$BRANCH" "$ORIGIN/$BRANCH" 

    echo 
    echo "Summary of actions:" 
    echo "- A new remote tracking branch '$BRANCH' was created" 
    echo "- You are now on branch '$BRANCH'" 
    echo 
} 

Helpful git flow command line arguments

Cuestiones relacionadas