Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.
Mejora tu productividad con
Gustavo Delgado R.
Backend developer - Uprise
gustavo@uprise.cl
gustavonecore
● Trabajo colaborativo
● Git
● Tus primeros comandos en Git
● Usted no lo haga
● Preguntas
Trabajo colaborativo
Trabajo colaborativo
Coder 1
Trabajo colaborativo
Coder 1 Coder 2
Trabajo colaborativo
Coder 1 Coder 2
Trabajo colaborativo
Coder 1 Coder 2
Coder 2
Trabajo colaborativo
Coder 1 Coder 2
Coder 2
Trabajo colaborativo
Porqué es difícil?
Pasa hasta en las mejores familias
Pasa hasta en las mejores familias
Pasa hasta en las mejores familias
Pasa hasta en las mejores familias
Pasa hasta en las mejores familias
Git
Git (pronunciado "guit") es un software de control de versiones diseñado por Linus
Torvalds, pensando en la eficiencia...
Git
"You know you're brilliant, but maybe you'd like to understand
what you did two weeks from now." - Linus Torvalds
Git - The goods
● Auditoría del código
● Control sobre cómo ha cambiado un repositorio
● Rollback de cambios simple
● Segm...
Git
Git
Git
Git - Svn/Mercurial/etc
Git - Svn/Mercurial/etc
Git - Svn/Mercurial/etc
Git - Branches
master
feature/1
bugfix/1
Git - Merge
feature/1
Git - Flow recipe
1. Developer tiene una tarea (issue)
2. Developer ejecuta clone del repositorio remoto en su máquina loc...
Git - Flow recipe
Git - Esencial
Git - Clonar repositorio
ssh$ git clone git@github.com:gustavonecore/sandbox.git
…..
Comprobando la conectividad… hecho.
g...
Git - Listar ramas
ssh/sandbox$ git branch
develop
* master
git branch
Git - Cambiar de rama
ssh/sandbox$ git checkout develop
ssh/sandbox$ git branch
* develop
master
git checkout {branch}
Git - Crear rama a partir de otra como base
ssh/sandbox$ git checkout -b feature/1 develop
Switched to a new branch 'featu...
Git - Revisar cambios
ssh/sandbox$ git status
modificado: README.md
ssh/sandbox$ git diff
--- a/README.md
+++ b/README.md
...
Git - Agregar archivos modificados
ssh/sandbox$ git add README.md
ssh/sandbox$ git status
modificado: README.md
git add fi...
Git - Guardar cambios en la rama localmente
ssh/sandbox$ git commit -m “Improve description of readme”
[feature/1 9caf4a5]...
Git - Sincronizar rama local con rama remota
ssh/sandbox$ git pull origin develop
* branch develop -> FETCH_HEAD
Already u...
Git - Subir cambios al repositorio remoto
ssh/sandbox$ git push origin feature/1
Counting objects: 3, done.
Delta compress...
Git - Ver historial
ssh/sandbox$ git log
commit 9caf4a571c240aa206c389dab717a10fa174bb19
Author: Gustavo Delgado <gustavod...
Git Platforms
Git - Let’s do it
Usted no lo haga
●
Usted no lo haga
● Subir cambios directos a master (siempre ocurre :@ )
● Mezclar cambios de diferentes branches
● Intenta...
Git - Productividad
¿Preguntas?
Mejora tu productividad con git
Mejora tu productividad con git
Próxima SlideShare
Cargando en…5
×

Mejora tu productividad con git

55 visualizaciones

Publicado el

How to use git and why you should use it!

Publicado en: Software
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Mejora tu productividad con git

  1. 1. Mejora tu productividad con Gustavo Delgado R. Backend developer - Uprise gustavo@uprise.cl gustavonecore
  2. 2. ● Trabajo colaborativo ● Git ● Tus primeros comandos en Git ● Usted no lo haga ● Preguntas
  3. 3. Trabajo colaborativo
  4. 4. Trabajo colaborativo Coder 1
  5. 5. Trabajo colaborativo Coder 1 Coder 2
  6. 6. Trabajo colaborativo Coder 1 Coder 2
  7. 7. Trabajo colaborativo Coder 1 Coder 2 Coder 2
  8. 8. Trabajo colaborativo Coder 1 Coder 2 Coder 2
  9. 9. Trabajo colaborativo Porqué es difícil?
  10. 10. Pasa hasta en las mejores familias
  11. 11. Pasa hasta en las mejores familias
  12. 12. Pasa hasta en las mejores familias
  13. 13. Pasa hasta en las mejores familias
  14. 14. Pasa hasta en las mejores familias
  15. 15. Git Git (pronunciado "guit") es un software de control de versiones diseñado por Linus Torvalds, pensando en la eficiencia y la confiabilidad del mantenimiento de versiones de aplicaciones cuando éstas tienen un gran número de archivos de código fuente.
  16. 16. Git "You know you're brilliant, but maybe you'd like to understand what you did two weeks from now." - Linus Torvalds
  17. 17. Git - The goods ● Auditoría del código ● Control sobre cómo ha cambiado un repositorio ● Rollback de cambios simple ● Segmentación de diferentes versiones a.k.a branch. ● Seguridad: todas las estructuras internas de datos están firmadas con SHA1. No se puede cambiar el código sin que nos enteremos ● Mejora nuestra capacidad de trabajar en equipo ● Merging y branching extremadamente eficientes ● Posibilidad de trabajo sin conexión
  18. 18. Git
  19. 19. Git
  20. 20. Git
  21. 21. Git - Svn/Mercurial/etc
  22. 22. Git - Svn/Mercurial/etc
  23. 23. Git - Svn/Mercurial/etc
  24. 24. Git - Branches master feature/1 bugfix/1
  25. 25. Git - Merge feature/1
  26. 26. Git - Flow recipe 1. Developer tiene una tarea (issue) 2. Developer ejecuta clone del repositorio remoto en su máquina local. 3. Developer crea un nuevo branch local desde la rama que posee los últimos cambios válidos (e.g: master, develop) 4. Developer realiza la tarea y está listo para subir su código 5. Developer agrega archivos y hace commit del cambio (repetir este paso según sea necesario) 6. Developer sube su rama local al repositorio remoto (push) 7. Developer crea una solicitud de integración (pull request)
  27. 27. Git - Flow recipe
  28. 28. Git - Esencial
  29. 29. Git - Clonar repositorio ssh$ git clone git@github.com:gustavonecore/sandbox.git ….. Comprobando la conectividad… hecho. git clone
  30. 30. Git - Listar ramas ssh/sandbox$ git branch develop * master git branch
  31. 31. Git - Cambiar de rama ssh/sandbox$ git checkout develop ssh/sandbox$ git branch * develop master git checkout {branch}
  32. 32. Git - Crear rama a partir de otra como base ssh/sandbox$ git checkout -b feature/1 develop Switched to a new branch 'feature/1' ssh/sandbox$ git branch develop * feature/1 master git checkout -b {child} {parent}
  33. 33. Git - Revisar cambios ssh/sandbox$ git status modificado: README.md ssh/sandbox$ git diff --- a/README.md +++ b/README.md -# sandbox +# Sandbox - Play repository git status git diff
  34. 34. Git - Agregar archivos modificados ssh/sandbox$ git add README.md ssh/sandbox$ git status modificado: README.md git add file git add .
  35. 35. Git - Guardar cambios en la rama localmente ssh/sandbox$ git commit -m “Improve description of readme” [feature/1 9caf4a5] Improve description of readme 1 file changed, 1 insertion(+), 2 deletions(-) git commit -m “{message}”
  36. 36. Git - Sincronizar rama local con rama remota ssh/sandbox$ git pull origin develop * branch develop -> FETCH_HEAD Already up-to-date. git fetch git merge origin {branch}
  37. 37. Git - Subir cambios al repositorio remoto ssh/sandbox$ git push origin feature/1 Counting objects: 3, done. Delta compression using up to 4 threads. Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 331 bytes | 0 bytes/s, done. Total 3 (delta 2), reused 0 (delta 0) remote: Resolving deltas: 100% (2/2), completed with 2 local objects. To git@github.com:gustavonecore/sandbox.git * [new branch] feature/1 -> feature/1 git push origin {branch}
  38. 38. Git - Ver historial ssh/sandbox$ git log commit 9caf4a571c240aa206c389dab717a10fa174bb19 Author: Gustavo Delgado <gustavod@digintent.com> Date: Wed Mar 8 23:50:31 2017 -0300 Improve description of readme commit 14cf23407d4151d2022f5317261048522376f7bb Author: gustavonecore <gustavo.uach@gmail.com> Date: Wed Jan 27 16:56:57 2016 -0300 Add readme git log
  39. 39. Git Platforms
  40. 40. Git - Let’s do it
  41. 41. Usted no lo haga ●
  42. 42. Usted no lo haga ● Subir cambios directos a master (siempre ocurre :@ ) ● Mezclar cambios de diferentes branches ● Intentar eliminar un commit que ya está en el repositorio remoto ● Usar git add . sin revisar qué archivos fueron modificados ● No subir commits periódicamente ● No mantener actualizado tu branch con el branch desde donde salió. ● Crear un PR con conflictos y errores ● Usar mensajes no descriptivos en los commits
  43. 43. Git - Productividad
  44. 44. ¿Preguntas?

×