SlideShare una empresa de Scribd logo
1 de 18
GIT PARA FRONTENDS
flujo de trabajo
añadir cambios al HEAD
Área de staging = HEAD = índice
Si no tenemos cambios desde el último
commit ni nuevos archivos, se dice que el
directorio de trabajo está vacío
$ git status
# On branch master
nothing to commit (working directory clean)
añadir cambios al HEAD
Los archivos nuevos siempre deberán ser
añadidos explícitamente a la lista de cambios
que se quieren commitear
git add “nombre_del_archivo_nuevo”
git commit
En cambio, si ya estaban añadidos con
anterioridad al HEAD podemos forzar la
subida con –a
git commit –a
añadir cambios al HEAD
Para añadir un comentario a tu commit
podemos usar la opción –m
git commit -m “Commit message”
Si hemos nos hemos equivocado al escribir
el comentario, podemos modificarlo de
forma sencilla
git commit --amend -m “Correct message“
subir cambios al repositorio
Tus cambios están ahora en el HEAD de tu
copia local. Para enviar estos cambios a tu
repositorio remoto ejecuta
git push origin master
Propagar cambios a otras ramas:
cherry-pick
Para hacer un cherry-pick nuestro índice
(HEAD) tiene que estar limpio. Nos
movemos a la rama destino y ejecutamos
git cherry-pick “id del commit”
git push origin master
Opciones:
-e (editar el mensaje del commit)
-x (añade la línea “cherry picked from
commit ...”)
trabajar con ramas
Crea una nueva rama llamada "feature_x" y
cámbiate a ella, vuelve a la rama master y
borra la rama recién creada
git checkout -b feature_x
git checkout master
git branch -d feature_x
Una rama nueva no estará disponible para
los demás a menos que hagas push
git push origin <branch>
actualizar el HEAD
Para actualizar tu repositorio local al commit
más nuevo, ejecuta
git pull
Es el equivalente a hacer
git fetch
git merge FETCH_HEAD
Opciones
--rebase[=false|true|preserve]
fusionar ramas
Para fusionar otra rama a tu rama activa (por
ejemplo master), utiliza
git merge <branch>
En caso de haber conflictos han de resolverse
a mano y marcarlos como fusionados,
opcionalmente se pueden revisar antes
git diff <source_branch> <target_branch>
git add <filename>
fusionar ramas
Opciones
--no-commit (en caso de fallo no hace el
merge)
-m <msg>
Resolver conflictos
<<<<<<< yours:sample.txt
Conflict resolution is hard; let's go shopping.
======= Git makes conflict resolution easy.
>>>>>>> theirs:sample.txt
fusionar ramas
Herramientas
git mergetool
git diff
git log --merge -p <path> (muestra las dif del
HEAD seguidas de las de la branch remota)
git status
Configurar editor de fusionado
$ git config --global merge.tool opendiff
deshacer cambios
Para eliminar un archivo de la lista de commit
git reset HEAD <file>
Para revertir definitivamente unos cambios
git checkout -- <file>
Deshacer un commit
git revert [hash del commit]
Almacenar cambios
stash
git stash save <message>
git list (para saber el nombre de cada stash)
git show <stash>
git stash pop <stash> (aplica los cambios y
borra el stash)
git stash appy <stash> (aplica los cambios sin
borrar el stash)
git stash clear (borra todos los stash)
git stash drop <stash> (borra uno
determinado)
eliminar y renombrar archivos
Para borrar un archivo, primero hay que
borrarlo de la lista de archivos del HEAD y
después del entorno de trabajo
$ git rm <nomre_archivo>
rm ‘nombre_archivo‘
Podemos utilizar el comando mv para
renombrar un archivo
$ git mv file_from file_to
etiquetas
Crear una etiqueta
$ git tag -a v1.4 -m 'my version 1.4‘
Listar etiquetas existentes y ver info
$ git tag
$ git show v1.4
Compartir etiquetas
$ git push origin v1.5
configuración
Usuario
git config --global user.name “nombre”
git config --global user.email “email”
Colores
git config --global color.status auto
git config --global color.branch green
Shortcuts
git config --global alias.st status
Git para frontends

Más contenido relacionado

Similar a Git para frontends

Más allá de Git add/commit/push
Más allá de Git add/commit/pushMás allá de Git add/commit/push
Más allá de Git add/commit/pushAlexis Lopez
 
Versionando proyectos con Git, desarrollo de software colaborativo
Versionando proyectos con Git, desarrollo de software colaborativoVersionando proyectos con Git, desarrollo de software colaborativo
Versionando proyectos con Git, desarrollo de software colaborativoHernán Aguilera
 
Introducción a GIT
Introducción a GITIntroducción a GIT
Introducción a GITmaxfontana90
 
Presentación GitHub Antonio Luque Bravo y Miguel Ángel Zamora Blanco
Presentación GitHub Antonio Luque Bravo y Miguel Ángel Zamora BlancoPresentación GitHub Antonio Luque Bravo y Miguel Ángel Zamora Blanco
Presentación GitHub Antonio Luque Bravo y Miguel Ángel Zamora BlancoAntonio Luque Bravo
 
Introducción a git
Introducción a gitIntroducción a git
Introducción a gitKeopx
 
WorkShop: Introducción a GIT
WorkShop: Introducción a GITWorkShop: Introducción a GIT
WorkShop: Introducción a GITKeopx
 
Taller Git en la URJC
Taller Git en la URJC Taller Git en la URJC
Taller Git en la URJC sidelab
 
Git + Github - Betabeers Córdoba XII
Git + Github - Betabeers Córdoba XIIGit + Github - Betabeers Córdoba XII
Git + Github - Betabeers Córdoba XIIquaip
 
Uso de git para el mantenimiento de parches locales o públicos
Uso de git para el mantenimiento  de parches locales o públicosUso de git para el mantenimiento  de parches locales o públicos
Uso de git para el mantenimiento de parches locales o públicosIñaki Arenaza
 
GITHUB control de versiones, para el manejo de repositorios versionados
GITHUB control de versiones, para el manejo de repositorios versionadosGITHUB control de versiones, para el manejo de repositorios versionados
GITHUB control de versiones, para el manejo de repositorios versionadosyuri460292
 
Git + Github - Sysmana 2014
Git + Github - Sysmana 2014Git + Github - Sysmana 2014
Git + Github - Sysmana 2014quaip
 
Scott Chacon - Cuento de tres árboles
Scott Chacon - Cuento de tres árbolesScott Chacon - Cuento de tres árboles
Scott Chacon - Cuento de tres árbolesStarTech Conference
 
Flujo de trabajo básico con git
Flujo de trabajo básico con gitFlujo de trabajo básico con git
Flujo de trabajo básico con gitJan Sanchez
 

Similar a Git para frontends (20)

Git: guia fácil para uso con Github
Git: guia fácil para uso con GithubGit: guia fácil para uso con Github
Git: guia fácil para uso con Github
 
Introducción a git y git hub
Introducción a git y git hubIntroducción a git y git hub
Introducción a git y git hub
 
Git
GitGit
Git
 
Git - Gitlab
Git - GitlabGit - Gitlab
Git - Gitlab
 
Más allá de Git add/commit/push
Más allá de Git add/commit/pushMás allá de Git add/commit/push
Más allá de Git add/commit/push
 
Versionando proyectos con Git, desarrollo de software colaborativo
Versionando proyectos con Git, desarrollo de software colaborativoVersionando proyectos con Git, desarrollo de software colaborativo
Versionando proyectos con Git, desarrollo de software colaborativo
 
Introducción a GIT
Introducción a GITIntroducción a GIT
Introducción a GIT
 
Introducción a git
Introducción a gitIntroducción a git
Introducción a git
 
Presentación GitHub Antonio Luque Bravo y Miguel Ángel Zamora Blanco
Presentación GitHub Antonio Luque Bravo y Miguel Ángel Zamora BlancoPresentación GitHub Antonio Luque Bravo y Miguel Ángel Zamora Blanco
Presentación GitHub Antonio Luque Bravo y Miguel Ángel Zamora Blanco
 
Introducción a git
Introducción a gitIntroducción a git
Introducción a git
 
WorkShop: Introducción a GIT
WorkShop: Introducción a GITWorkShop: Introducción a GIT
WorkShop: Introducción a GIT
 
Taller Git en la URJC
Taller Git en la URJC Taller Git en la URJC
Taller Git en la URJC
 
Git + Github - Betabeers Córdoba XII
Git + Github - Betabeers Córdoba XIIGit + Github - Betabeers Córdoba XII
Git + Github - Betabeers Córdoba XII
 
Uso de git para el mantenimiento de parches locales o públicos
Uso de git para el mantenimiento  de parches locales o públicosUso de git para el mantenimiento  de parches locales o públicos
Uso de git para el mantenimiento de parches locales o públicos
 
GITHUB control de versiones, para el manejo de repositorios versionados
GITHUB control de versiones, para el manejo de repositorios versionadosGITHUB control de versiones, para el manejo de repositorios versionados
GITHUB control de versiones, para el manejo de repositorios versionados
 
Git.manual.usuario
Git.manual.usuarioGit.manual.usuario
Git.manual.usuario
 
Git + Github - Sysmana 2014
Git + Github - Sysmana 2014Git + Github - Sysmana 2014
Git + Github - Sysmana 2014
 
Scott Chacon - Cuento de tres árboles
Scott Chacon - Cuento de tres árbolesScott Chacon - Cuento de tres árboles
Scott Chacon - Cuento de tres árboles
 
02 versionamientoy usogit_i_parte
02 versionamientoy usogit_i_parte02 versionamientoy usogit_i_parte
02 versionamientoy usogit_i_parte
 
Flujo de trabajo básico con git
Flujo de trabajo básico con gitFlujo de trabajo básico con git
Flujo de trabajo básico con git
 

Git para frontends

  • 3. añadir cambios al HEAD Área de staging = HEAD = índice Si no tenemos cambios desde el último commit ni nuevos archivos, se dice que el directorio de trabajo está vacío $ git status # On branch master nothing to commit (working directory clean)
  • 4. añadir cambios al HEAD Los archivos nuevos siempre deberán ser añadidos explícitamente a la lista de cambios que se quieren commitear git add “nombre_del_archivo_nuevo” git commit En cambio, si ya estaban añadidos con anterioridad al HEAD podemos forzar la subida con –a git commit –a
  • 5. añadir cambios al HEAD Para añadir un comentario a tu commit podemos usar la opción –m git commit -m “Commit message” Si hemos nos hemos equivocado al escribir el comentario, podemos modificarlo de forma sencilla git commit --amend -m “Correct message“
  • 6. subir cambios al repositorio Tus cambios están ahora en el HEAD de tu copia local. Para enviar estos cambios a tu repositorio remoto ejecuta git push origin master
  • 7. Propagar cambios a otras ramas: cherry-pick Para hacer un cherry-pick nuestro índice (HEAD) tiene que estar limpio. Nos movemos a la rama destino y ejecutamos git cherry-pick “id del commit” git push origin master Opciones: -e (editar el mensaje del commit) -x (añade la línea “cherry picked from commit ...”)
  • 8. trabajar con ramas Crea una nueva rama llamada "feature_x" y cámbiate a ella, vuelve a la rama master y borra la rama recién creada git checkout -b feature_x git checkout master git branch -d feature_x Una rama nueva no estará disponible para los demás a menos que hagas push git push origin <branch>
  • 9. actualizar el HEAD Para actualizar tu repositorio local al commit más nuevo, ejecuta git pull Es el equivalente a hacer git fetch git merge FETCH_HEAD Opciones --rebase[=false|true|preserve]
  • 10. fusionar ramas Para fusionar otra rama a tu rama activa (por ejemplo master), utiliza git merge <branch> En caso de haber conflictos han de resolverse a mano y marcarlos como fusionados, opcionalmente se pueden revisar antes git diff <source_branch> <target_branch> git add <filename>
  • 11. fusionar ramas Opciones --no-commit (en caso de fallo no hace el merge) -m <msg> Resolver conflictos <<<<<<< yours:sample.txt Conflict resolution is hard; let's go shopping. ======= Git makes conflict resolution easy. >>>>>>> theirs:sample.txt
  • 12. fusionar ramas Herramientas git mergetool git diff git log --merge -p <path> (muestra las dif del HEAD seguidas de las de la branch remota) git status Configurar editor de fusionado $ git config --global merge.tool opendiff
  • 13. deshacer cambios Para eliminar un archivo de la lista de commit git reset HEAD <file> Para revertir definitivamente unos cambios git checkout -- <file> Deshacer un commit git revert [hash del commit]
  • 14. Almacenar cambios stash git stash save <message> git list (para saber el nombre de cada stash) git show <stash> git stash pop <stash> (aplica los cambios y borra el stash) git stash appy <stash> (aplica los cambios sin borrar el stash) git stash clear (borra todos los stash) git stash drop <stash> (borra uno determinado)
  • 15. eliminar y renombrar archivos Para borrar un archivo, primero hay que borrarlo de la lista de archivos del HEAD y después del entorno de trabajo $ git rm <nomre_archivo> rm ‘nombre_archivo‘ Podemos utilizar el comando mv para renombrar un archivo $ git mv file_from file_to
  • 16. etiquetas Crear una etiqueta $ git tag -a v1.4 -m 'my version 1.4‘ Listar etiquetas existentes y ver info $ git tag $ git show v1.4 Compartir etiquetas $ git push origin v1.5
  • 17. configuración Usuario git config --global user.name “nombre” git config --global user.email “email” Colores git config --global color.status auto git config --global color.branch green Shortcuts git config --global alias.st status