Scott Chacon - Cuento de tres árboles

1,639 views
1,512 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,639
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
16
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Scott Chacon - Cuento de tres árboles

  1. 1. UN CUENTO DETRES ÁRBOLESuna tarde mágica con Scott Chacón
  2. 2. git.io/tres-arboles
  3. 3. introducción
  4. 4. introducción
  5. 5. reset
  6. 6. reset
  7. 7. usan reset?
  8. 8. UN CUENTO DETRES ÁRBOLESuna tarde mágica con Scott Chacón
  9. 9. mi
  10. 10. scott chacon
  11. 11. github SOCIAL CODING CIO
  12. 12. git-scm.com
  13. 13. git-scm.com
  14. 14. gitref.org
  15. 15. progit.org
  16. 16. progit.org
  17. 17. progit.org/book/es
  18. 18. recursos
  19. 19. recursosgit-scm.com
  20. 20. recursosgit-scm.comgitref.org
  21. 21. recursosgit-scm.comgitref.orgprogit.org
  22. 22. @chacon
  23. 23. </mi>
  24. 24. reintroducción a git
  25. 25. manejarárboles
  26. 26. “árbol”
  27. 27. árbol ==snapshot
  28. 28. ejemplo
  29. 29. $ tree.!"" README!"" Rakefile#"" lib #"" git.rb 1 directory, 3 files
  30. 30. git
  31. 31. git commit creaárboles permanentes
  32. 32. PRIMER ACTO los tres árboles
  33. 33. el primer árbolel HEAD
  34. 34. ¿usan HEAD?
  35. 35. HEAD mastercommit A develop
  36. 36. HEAD mastercommit A commit B develop
  37. 37. HEADel último commit
  38. 38. el segundo árbolel ÍNDICE
  39. 39. área deensayo
  40. 40. ¿un árbol?
  41. 41. un árbol? mas o menos
  42. 42. índice
  43. 43. índiceel proximo commit
  44. 44. el tercer árbolel directorio de trabajo
  45. 45. HEAD$ git ls-tree -r HEAD100644 blob ad47ff7d328ff27e50bfcd0fb22baa1d680109bb README100644 blob 5de1607ba20b3ed555e8f77465d668005d545159 example.rb100644 blob 6478a3173fd423085ce7685a37ec7fcf49401737 kidgloves.rbÍndice$ git ls-files -s100644 ad47ff7d328ff27e50bfcd0fb22baa1d680109bb 0 README100644 5de1607ba20b3ed555e8f77465d668005d545159 0 example.rb100644 6478a3173fd423085ce7685a37ec7fcf49401737 0 kidgloves.rbDirectorio de Trabajo$ ls -l-rw-r--r-- 1 schacon staff 610 Sep 26 09:38 README-rw-r--r-- 1 schacon staff 209 Sep 26 09:38 example.rb-rw-r--r-- 1 schacon staff 5024 Sep 26 09:38 kidgloves.rb
  46. 46. HEAD$ git ls-tree -r HEAD100644 blob ad47ff7d328ff27e50bfcd0fb22baa1d680109bb README100644 blob 5de1607ba20b3ed555e8f77465d668005d545159 example.rb100644 blob 6478a3173fd423085ce7685a37ec7fcf49401737 kidgloves.rbÍndice$ git ls-files -s100644 ad47ff7d328ff27e50bfcd0fb22baa1d680109bb 0 README100644 5de1607ba20b3ed555e8f77465d668005d545159 0 example.rb100644 6478a3173fd423085ce7685a37ec7fcf49401737 0 kidgloves.rbDirectorio de Trabajo$ ls -l-rw-r--r-- 1 schacon staff 610 Sep 26 09:38 README-rw-r--r-- 1 schacon staff 209 Sep 26 09:38 example.rb-rw-r--r-- 1 schacon staff 5024 Sep 26 09:38 kidgloves.rb
  47. 47. TRES ÁRBOLESHEAD, Índice y Directorio de Trabajo
  48. 48. Directorio deHEAD Índice Trabajo stage files git checkout git add git commit
  49. 49. Directorio deHEAD Índice Trabajo stage files git checkout git add git commit
  50. 50. Directorio deHEAD Índice Trabajo stage files git checkout git add git commit
  51. 51. Directorio deHEAD Índice Trabajo stage files git checkout git add git commit
  52. 52. funciones de los árboles
  53. 53. funciones de los árbolesHEAD el último commit, generador del proximo
  54. 54. funciones de los árbolesHEAD el último commit, generador del proximoÍndice el proximo commit
  55. 55. funciones de los árbolesHEAD el último commit, generador del proximoÍndice el proximo commitDir de Trabajo caja de arena
  56. 56. SEGUNDO ACTOtrabajando con árboles
  57. 57. git status
  58. 58. $ git status# On branch master# Your branch is behind origin/master by 2 commits,# and can be fast-forwarded.## Changes to be committed:# (use "git reset HEAD ..." to unstage)## modified: jobs/email_reply.rb## Changed but not updated:# (use "git add ..." to update what will be committed)# (use "git checkout -- ..." to discard changes# in working directory)## modified: app/helpers/users_helper.rb# modified: test/unit/email_reply_job_test.rb#
  59. 59. $ git status# On branch master# Your branch is behind origin/master by 2 commits,# and can be fast-forwarded.## Changes to be committed:# HEAD and index differ## modified: jobs/email_reply.rb## Changed but not updated:# index and working directory differ#### modified: app/helpers/users_helper.rb# modified: test/unit/email_reply_job_test.rb#
  60. 60. ejemplo
  61. 61. $ git status# On branch master# Your branch is behind origin/mas# and can be fast-forwarded.## Changed but not updated:# (use "git add ..." to update wh# (use "git checkout -- ..." to d# in working directory)## modified: file.txt#
  62. 62. $ git status# On branch master# Your branch is behind origin/m# and can be fast-forwarded.## Changes to be committed:# (use "git reset HEAD ..." to## modified: file.txt#
  63. 63. git reset
  64. 64. 2 tipos
  65. 65. git reset [commit] [ruta] git reset [commit]
  66. 66. 1. Forma Con Rutagit reset [commit] [ruta]
  67. 67. git reset [file]es el opuesto de git add [file]
  68. 68. 2. Forma Sin Ruta git reset [commit]
  69. 69. Las Opciones de Reset
  70. 70. Las Opciones de Reset--soft mueve HEAD al objetivo
  71. 71. Las Opciones de Reset--soft mueve HEAD al objetivo[--mixed] copia al índice
  72. 72. Las Opciones de Reset--soft mueve HEAD al objetivo[--mixed] copia al índice --hard copia al dir de trabajo
  73. 73. --hard == mal
  74. 74. reset != mal
  75. 75. a ex cep tión de -reset -har d != mal
  76. 76. revisemos
  77. 77. --softmueve HEAD a otro commit
  78. 78. git reset --soft HEAD~ es como que git uncommit
  79. 79. --mixed mueve HEAD aotro commit, y despues lo copia al índice
  80. 80. git reset HEAD~ es como quegit uncommit && git unadd *
  81. 81. --hard mueve HEAD, copia alíndice, y luego lo copiaal directorio de trabajo
  82. 82. git reset --hard HEAD~ es como que git uncommit git unadd * ctrl-z ctrl-z ctrl-z
  83. 83. ¿para que?
  84. 84. ¿para que? deshacer un commit
  85. 85. ¿para que? deshacer un commitrevertir fácilmente un archivo
  86. 86. squashing
  87. 87. HEAD masterA B C D
  88. 88. HEAD masterA B C D git reset --soft A
  89. 89. HEADmaster A B C D git reset --soft A
  90. 90. HEAD master A B C Dgit commit -m ‘Yo soy muy inteligente’
  91. 91. HEAD master A D2 B C Dgit commit -m ‘Yo soy muy inteligente’
  92. 92. HEAD masterA D2
  93. 93. commit 6eae70eee71446c4fb63d897c9feb62d62abc732Author: Scott Chacon <schacon@gmail.com>Date: Mon Oct 31 09:01:27 2011 -0700 wip: guárdelo en redis
  94. 94. commit 04c113569d5eec4fb53b5e35e953159a4c4449caAuthor: Scott Chacon <schacon@gmail.com>Date: Mon Oct 31 09:05:16 2011 -0700 wip: hmm. guárdelo en cassandracommit 6eae70eee71446c4fb63d897c9feb62d62abc732Author: Scott Chacon <schacon@gmail.com>Date: Mon Oct 31 09:01:27 2011 -0700 wip: guárdelo en redis
  95. 95. commit 71f6d906b763538d1a146cbf3934af6d19fdc348Author: Scott Chacon <schacon@gmail.com>Date: Mon Oct 31 09:05:20 2011 -0700 wip: maldita sea. tal vez riak?commit 04c113569d5eec4fb53b5e35e953159a4c4449caAuthor: Scott Chacon <schacon@gmail.com>Date: Mon Oct 31 09:05:16 2011 -0700 wip: hmm. guárdelo en cassandracommit 6eae70eee71446c4fb63d897c9feb62d62abc732Author: Scott Chacon <schacon@gmail.com>Date: Mon Oct 31 09:01:27 2011 -0700 wip: guárdelo en redis
  96. 96. commit 8c9edaee51647f392e20199bfc1bb15c9e221a1aAuthor: Scott Chacon <schacon@gmail.com>Date: Mon Oct 31 09:05:20 2011 -0700 wip: por que coño, riak? ahora, mongodb...commit 71f6d906b763538d1a146cbf3934af6d19fdc348Author: Scott Chacon <schacon@gmail.com>Date: Mon Oct 31 09:05:20 2011 -0700 wip: maldita sea. tal vez riak?commit 04c113569d5eec4fb53b5e35e953159a4c4449caAuthor: Scott Chacon <schacon@gmail.com>Date: Mon Oct 31 09:05:16 2011 -0700 wip: hmm. guárdelo en cassandracommit 6eae70eee71446c4fb63d897c9feb62d62abc732Author: Scott Chacon <schacon@gmail.com>Date: Mon Oct 31 09:01:27 2011 -0700 wip: guárdelo en redis
  97. 97. commit 6eae70eee71446c4fb63d897c9feb62d62abc732Author: Scott Chacon <schacon@gmail.com>Date: Mon Oct 31 10:01:27 2011 -0700 solución perfecta en el primer intento: mongodb
  98. 98. WIP
  99. 99. </reset>
  100. 100. CODAen resúmen
  101. 101. funciones de los árboles
  102. 102. funciones de los árbolesHEAD el último commit, generador del proximo
  103. 103. funciones de los árbolesHEAD el último commit, generador del proximoÍndice el proximo commit
  104. 104. funciones de los árbolesHEAD el último commit, generador del proximoÍndice el proximo commitDir de Trabajo caja de arena
  105. 105. Muchasgracias!
  106. 106. scott chacon github.com/schacon/tres-arboles @chacon

×