ConceptoBloque 3 · Ramas y conflictos
push -u, fetch y pull
Comandos de esta diapositiva
git push -u origin agrega-contactogit fetchgit pullgit config --global pull.rebase falsegit branch -a
Subir una rama nueva
Las ramas nuevas solo existen en tu computadora hasta que las subes. La primera vez:
git push -u origin agrega-contacto
-u conecta tu rama con su copia en GitHub.
Es como guardar un contacto en el teléfono: la primera vez escribes el número completo y después solo eliges el nombre.
A partir de ahí basta con git push y git pull. Si la primera vez escribes solo git push, Git avisa has no upstream branch y te muestra el comando completo.
fetch contra pull
git fetchdescarga lo nuevo y actualiza las etiquetasorigin/..., pero no toca tus ramas ni tus archivos.git pullhace unfetchy después junta lo descargado con tu rama, igual que un merge.
fetches sacar el correo del buzón y dejarlo cerrado en la mesa: ya sabes qué llegó, pero tu escritorio sigue igual.pulles sacarlo y además acomodarlo en su lugar.
Si tu rama y la de GitHub tienen commits distintos, git pull falla con Need to specify how to reconcile divergent branches. Para que junte con merge, configúralo una vez:
git config --global pull.rebase false
La otra forma de juntar, rebase, se ve en el Bloque 5.
Ramas en la web
El menú de ramas (arriba a la izquierda de la lista de archivos) permite cambiar de rama, crear una nueva y entrar a View all branches. Desde la terminal, git branch -a muestra tus ramas locales junto con las origin/... que conoce tu computadora.