143
UN CUENTO DE TRES ÁRBOLES una tarde mágica con Scott Chacón

Scott Chacon - Cuento de tres árboles

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Scott Chacon - Cuento de tres árboles

UN CUENTO DE

TRES ÁRBOLES una tarde mágica con Scott Chacón

Page 2: Scott Chacon - Cuento de tres árboles

git.io/tres-arboles

Page 3: Scott Chacon - Cuento de tres árboles

introducción

Page 4: Scott Chacon - Cuento de tres árboles

introducción

Page 5: Scott Chacon - Cuento de tres árboles

reset

Page 6: Scott Chacon - Cuento de tres árboles

reset

Page 7: Scott Chacon - Cuento de tres árboles

usan reset?

Page 8: Scott Chacon - Cuento de tres árboles
Page 9: Scott Chacon - Cuento de tres árboles

UN CUENTO DE

TRES ÁRBOLES una tarde mágica con Scott Chacón

Page 10: Scott Chacon - Cuento de tres árboles

mi

Page 11: Scott Chacon - Cuento de tres árboles

scott chacon

Page 12: Scott Chacon - Cuento de tres árboles

github

SOCIAL CODING

CIO

Page 13: Scott Chacon - Cuento de tres árboles

git-scm.com

Page 14: Scott Chacon - Cuento de tres árboles

git-scm.com

Page 15: Scott Chacon - Cuento de tres árboles

gitref.org

Page 16: Scott Chacon - Cuento de tres árboles
Page 17: Scott Chacon - Cuento de tres árboles

progit.org

Page 18: Scott Chacon - Cuento de tres árboles

progit.org

Page 19: Scott Chacon - Cuento de tres árboles

progit.org/book/es

Page 20: Scott Chacon - Cuento de tres árboles

recursos

Page 21: Scott Chacon - Cuento de tres árboles

recursosgit-scm.com

Page 22: Scott Chacon - Cuento de tres árboles

recursosgit-scm.com

gitref.org

Page 23: Scott Chacon - Cuento de tres árboles

recursosgit-scm.com

gitref.org

progit.org

Page 24: Scott Chacon - Cuento de tres árboles

@chacon

Page 25: Scott Chacon - Cuento de tres árboles

</mi>

Page 26: Scott Chacon - Cuento de tres árboles

gitreintroducción a

Page 27: Scott Chacon - Cuento de tres árboles

manejar árboles

Page 28: Scott Chacon - Cuento de tres árboles

“árbol”

Page 29: Scott Chacon - Cuento de tres árboles

árbol ==

snapshot

Page 30: Scott Chacon - Cuento de tres árboles
Page 31: Scott Chacon - Cuento de tres árboles

ejemplo

Page 32: Scott Chacon - Cuento de tres árboles

$ tree.!"" README!"" Rakefile#"" lib #"" git.rb

1 directory, 3 files

Page 33: Scott Chacon - Cuento de tres árboles
Page 34: Scott Chacon - Cuento de tres árboles
Page 35: Scott Chacon - Cuento de tres árboles
Page 36: Scott Chacon - Cuento de tres árboles
Page 37: Scott Chacon - Cuento de tres árboles

git

Page 38: Scott Chacon - Cuento de tres árboles

gitcommit crea

árboles permanentes

Page 39: Scott Chacon - Cuento de tres árboles

PRIMER ACTOlos tres árboles

Page 40: Scott Chacon - Cuento de tres árboles

el HEADel primer árbol

Page 41: Scott Chacon - Cuento de tres árboles

¿usan HEAD?

Page 42: Scott Chacon - Cuento de tres árboles

commit A

HEAD

master

develop

Page 43: Scott Chacon - Cuento de tres árboles

commit A

HEAD

master

develop

commit B

Page 44: Scott Chacon - Cuento de tres árboles

HEADel último commit

Page 45: Scott Chacon - Cuento de tres árboles

el ÍNDICEel segundo árbol

Page 46: Scott Chacon - Cuento de tres árboles

área deensayo

Page 47: Scott Chacon - Cuento de tres árboles

¿un árbol?

Page 48: Scott Chacon - Cuento de tres árboles

un árbol?mas o menos

Page 49: Scott Chacon - Cuento de tres árboles

índice

Page 50: Scott Chacon - Cuento de tres árboles

índiceel proximo commit

Page 51: Scott Chacon - Cuento de tres árboles

el directoriode trabajo

el tercer árbol

Page 52: Scott Chacon - Cuento de tres árboles
Page 53: Scott Chacon - Cuento de tres árboles

$ git ls-tree -r HEAD100644 blob ad47ff7d328ff27e50bfcd0fb22baa1d680109bb README100644 blob 5de1607ba20b3ed555e8f77465d668005d545159 example.rb100644 blob 6478a3173fd423085ce7685a37ec7fcf49401737 kidgloves.rb

$ git ls-files -s 100644 ad47ff7d328ff27e50bfcd0fb22baa1d680109bb 0 README100644 5de1607ba20b3ed555e8f77465d668005d545159 0 example.rb100644 6478a3173fd423085ce7685a37ec7fcf49401737 0 kidgloves.rb

$ 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

HEAD

Índice

Directorio de Trabajo

Page 54: Scott Chacon - Cuento de tres árboles

$ git ls-tree -r HEAD100644 blob ad47ff7d328ff27e50bfcd0fb22baa1d680109bb README100644 blob 5de1607ba20b3ed555e8f77465d668005d545159 example.rb100644 blob 6478a3173fd423085ce7685a37ec7fcf49401737 kidgloves.rb

$ git ls-files -s 100644 ad47ff7d328ff27e50bfcd0fb22baa1d680109bb 0 README100644 5de1607ba20b3ed555e8f77465d668005d545159 0 example.rb100644 6478a3173fd423085ce7685a37ec7fcf49401737 0 kidgloves.rb

$ 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

HEAD

Índice

Directorio de Trabajo

Page 55: Scott Chacon - Cuento de tres árboles

TRES ÁRBOLESHEAD, Índice y Directorio de Trabajo

Page 56: Scott Chacon - Cuento de tres árboles

Directorio de TrabajoÍndiceHEAD

stage files git checkout

git commit

git add

Page 57: Scott Chacon - Cuento de tres árboles

Directorio de TrabajoÍndiceHEAD

stage files git checkout

git commit

git add

Page 58: Scott Chacon - Cuento de tres árboles

Directorio de TrabajoÍndiceHEAD

stage files git checkout

git commit

git add

Page 59: Scott Chacon - Cuento de tres árboles

Directorio de TrabajoÍndiceHEAD

stage files git checkout

git commit

git add

Page 60: Scott Chacon - Cuento de tres árboles

funciones de los árboles

Page 61: Scott Chacon - Cuento de tres árboles

funciones de los árboles

HEAD el último commit, generador del proximo

Page 62: Scott Chacon - Cuento de tres árboles

funciones de los árboles

HEAD el último commit, generador del proximo

Índice el proximo commit

Page 63: Scott Chacon - Cuento de tres árboles

funciones de los árboles

HEAD el último commit, generador del proximo

Índice el proximo commit

Dir de Trabajo caja de arena

Page 64: Scott Chacon - Cuento de tres árboles

SEGUNDO ACTOtrabajando con árboles

Page 65: Scott Chacon - Cuento de tres árboles

git status

Page 66: Scott Chacon - Cuento de tres árboles

$ 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#

Page 67: Scott Chacon - Cuento de tres árboles

$ 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#

Page 68: Scott Chacon - Cuento de tres árboles

ejemplo

Page 69: Scott Chacon - Cuento de tres árboles
Page 70: Scott Chacon - Cuento de tres árboles
Page 71: Scott Chacon - Cuento de tres árboles
Page 72: Scott Chacon - Cuento de tres árboles
Page 73: Scott Chacon - Cuento de tres árboles
Page 74: Scott Chacon - Cuento de tres árboles

$ git status# On branch master# Your branch is behind 'origin/master' by 2 commits,# and can be fast-forwarded.## Changed but not updated:# (use "git add ..." to update what will be committed)# (use "git checkout -- ..." to discard changes # in working directory)## modified: file.txt#

Page 75: Scott Chacon - Cuento de tres árboles
Page 76: Scott Chacon - Cuento de tres árboles
Page 77: Scott Chacon - Cuento de tres árboles

$ 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: file.txt#

Page 78: Scott Chacon - Cuento de tres árboles
Page 79: Scott Chacon - Cuento de tres árboles
Page 80: Scott Chacon - Cuento de tres árboles
Page 81: Scott Chacon - Cuento de tres árboles
Page 82: Scott Chacon - Cuento de tres árboles
Page 83: Scott Chacon - Cuento de tres árboles

git reset

Page 84: Scott Chacon - Cuento de tres árboles

2 tipos

Page 85: Scott Chacon - Cuento de tres árboles

git reset [commit] [ruta]

git reset [commit]

Page 86: Scott Chacon - Cuento de tres árboles

1. Forma Con Ruta

git reset [commit] [ruta]

Page 87: Scott Chacon - Cuento de tres árboles

git reset [file]

es el opuesto degit add [file]

Page 88: Scott Chacon - Cuento de tres árboles
Page 89: Scott Chacon - Cuento de tres árboles
Page 90: Scott Chacon - Cuento de tres árboles
Page 91: Scott Chacon - Cuento de tres árboles
Page 92: Scott Chacon - Cuento de tres árboles

2. Forma Sin Ruta

git reset [commit]

Page 93: Scott Chacon - Cuento de tres árboles

Las Opciones de Reset

Page 94: Scott Chacon - Cuento de tres árboles

--soft mueve HEAD al objetivo

Las Opciones de Reset

Page 95: Scott Chacon - Cuento de tres árboles

--soft mueve HEAD al objetivo

[--mixed] copia al índice

Las Opciones de Reset

Page 96: Scott Chacon - Cuento de tres árboles

--hard copia al dir de trabajo

--soft mueve HEAD al objetivo

Las Opciones de Reset

[--mixed] copia al índice

Page 97: Scott Chacon - Cuento de tres árboles

--hard

mal==

Page 98: Scott Chacon - Cuento de tres árboles

reset

mal!=

Page 99: Scott Chacon - Cuento de tres árboles

reset

mal!=

a exceptión de --hard

Page 100: Scott Chacon - Cuento de tres árboles

revisemos

Page 101: Scott Chacon - Cuento de tres árboles

--softmueve HEAD a

otro commit

Page 102: Scott Chacon - Cuento de tres árboles
Page 103: Scott Chacon - Cuento de tres árboles
Page 104: Scott Chacon - Cuento de tres árboles
Page 105: Scott Chacon - Cuento de tres árboles
Page 106: Scott Chacon - Cuento de tres árboles

git reset --soft HEAD~

git uncommit

es como que

Page 107: Scott Chacon - Cuento de tres árboles

--mixedmueve HEAD a

otro commit, y despues lo copia al índice

Page 108: Scott Chacon - Cuento de tres árboles
Page 109: Scott Chacon - Cuento de tres árboles
Page 110: Scott Chacon - Cuento de tres árboles

git reset HEAD~

git uncommit && git unadd *

es como que

Page 111: Scott Chacon - Cuento de tres árboles

--hardmueve HEAD, copia al índice, y luego lo copia al directorio de trabajo

Page 112: Scott Chacon - Cuento de tres árboles
Page 113: Scott Chacon - Cuento de tres árboles
Page 114: Scott Chacon - Cuento de tres árboles

git reset --hard HEAD~

git uncommitgit unadd *ctrl-z ctrl-z ctrl-z

es como que

Page 115: Scott Chacon - Cuento de tres árboles

¿para que?

Page 116: Scott Chacon - Cuento de tres árboles

¿para que?deshacer un commit

Page 117: Scott Chacon - Cuento de tres árboles

¿para que?deshacer un commit

revertir fácilmente un archivo

Page 118: Scott Chacon - Cuento de tres árboles

squashing

Page 119: Scott Chacon - Cuento de tres árboles

A B C D

HEAD

master

Page 120: Scott Chacon - Cuento de tres árboles

A B C D

git reset --soft A

HEAD

master

Page 121: Scott Chacon - Cuento de tres árboles

A B C D

git reset --soft A

HEAD

master

Page 122: Scott Chacon - Cuento de tres árboles

A B C D

git commit -m ‘Yo soy muy inteligente’

HEAD

master

Page 123: Scott Chacon - Cuento de tres árboles

A

B C D

HEAD

master

D2

git commit -m ‘Yo soy muy inteligente’

Page 124: Scott Chacon - Cuento de tres árboles

A

HEAD

master

D2

Page 125: Scott Chacon - Cuento de tres árboles
Page 126: Scott Chacon - Cuento de tres árboles
Page 127: Scott Chacon - Cuento de tres árboles
Page 128: Scott Chacon - Cuento de tres árboles
Page 129: Scott Chacon - Cuento de tres árboles

commit 6eae70eee71446c4fb63d897c9feb62d62abc732Author: Scott Chacon <[email protected]>Date: Mon Oct 31 09:01:27 2011 -0700

wip: guárdelo en redis

Page 130: Scott Chacon - Cuento de tres árboles

commit 04c113569d5eec4fb53b5e35e953159a4c4449caAuthor: Scott Chacon <[email protected]>Date: Mon Oct 31 09:05:16 2011 -0700

wip: hmm. guárdelo en cassandra

commit 6eae70eee71446c4fb63d897c9feb62d62abc732Author: Scott Chacon <[email protected]>Date: Mon Oct 31 09:01:27 2011 -0700

wip: guárdelo en redis

Page 131: Scott Chacon - Cuento de tres árboles

commit 71f6d906b763538d1a146cbf3934af6d19fdc348Author: Scott Chacon <[email protected]>Date: Mon Oct 31 09:05:20 2011 -0700

wip: maldita sea. tal vez riak?

commit 04c113569d5eec4fb53b5e35e953159a4c4449caAuthor: Scott Chacon <[email protected]>Date: Mon Oct 31 09:05:16 2011 -0700

wip: hmm. guárdelo en cassandra

commit 6eae70eee71446c4fb63d897c9feb62d62abc732Author: Scott Chacon <[email protected]>Date: Mon Oct 31 09:01:27 2011 -0700

wip: guárdelo en redis

Page 132: Scott Chacon - Cuento de tres árboles

commit 8c9edaee51647f392e20199bfc1bb15c9e221a1aAuthor: Scott Chacon <[email protected]>Date: Mon Oct 31 09:05:20 2011 -0700

wip: por que coño, riak? ahora, mongodb...

commit 71f6d906b763538d1a146cbf3934af6d19fdc348Author: Scott Chacon <[email protected]>Date: Mon Oct 31 09:05:20 2011 -0700

wip: maldita sea. tal vez riak?

commit 04c113569d5eec4fb53b5e35e953159a4c4449caAuthor: Scott Chacon <[email protected]>Date: Mon Oct 31 09:05:16 2011 -0700

wip: hmm. guárdelo en cassandra

commit 6eae70eee71446c4fb63d897c9feb62d62abc732Author: Scott Chacon <[email protected]>Date: Mon Oct 31 09:01:27 2011 -0700

wip: guárdelo en redis

Page 133: Scott Chacon - Cuento de tres árboles

commit 6eae70eee71446c4fb63d897c9feb62d62abc732Author: Scott Chacon <[email protected]>Date: Mon Oct 31 10:01:27 2011 -0700

solución perfecta en el primer intento: mongodb

Page 134: Scott Chacon - Cuento de tres árboles

WIP

Page 135: Scott Chacon - Cuento de tres árboles

</reset>

Page 136: Scott Chacon - Cuento de tres árboles
Page 137: Scott Chacon - Cuento de tres árboles

CODAen resúmen

Page 138: Scott Chacon - Cuento de tres árboles

funciones de los árboles

Page 139: Scott Chacon - Cuento de tres árboles

funciones de los árboles

HEAD el último commit, generador del proximo

Page 140: Scott Chacon - Cuento de tres árboles

funciones de los árboles

HEAD el último commit, generador del proximo

Índice el proximo commit

Page 141: Scott Chacon - Cuento de tres árboles

funciones de los árboles

HEAD el último commit, generador del proximo

Índice el proximo commit

Dir de Trabajo caja de arena

Page 142: Scott Chacon - Cuento de tres árboles

Muchas gracias!

Page 143: Scott Chacon - Cuento de tres árboles

scott chacon@chacon

github.com/schacon/tres-arboles