From c42bd2ebd2de34ea73f40c21e64c1b6a73a7d9e9 Mon Sep 17 00:00:00 2001 From: tomasdisk Date: Sun, 27 Jun 2021 13:33:32 -0300 Subject: [PATCH 1/5] clase 2 setup --- .../academy/2-git/2-git-branch/readme.mdx | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 public/data/academy/2-git/2-git-branch/readme.mdx diff --git a/public/data/academy/2-git/2-git-branch/readme.mdx b/public/data/academy/2-git/2-git-branch/readme.mdx new file mode 100644 index 0000000..521b3a1 --- /dev/null +++ b/public/data/academy/2-git/2-git-branch/readme.mdx @@ -0,0 +1,38 @@ +--- +title: 'Git branch' +publishedAt: '2021-06-27' +author: 'Tomas' +summary: '' +youtubeURL: '' +--- + +import { themes, Image } from 'mdx-deck' + + +# Clase 2: `git branch` + +### Tabla de contenido + +1. ¿Qué son las ramas? (Branches) + +1. Branching + +1. Merging + +1. Merge conflictos :scream: + +1. Pull Request (PR) + +--- + +## ¿Qué son las ramas? (Branches) + +## Branching + +### + +## Merging + +## Merge conflictos :scream: + +## Pull Request (PR) From 82604db313cf4539302caccb7c10dc13105b8214 Mon Sep 17 00:00:00 2001 From: Tomas Discoli Date: Thu, 8 Jul 2021 00:05:06 -0300 Subject: [PATCH 2/5] git clase 2 --- package.json | 2 +- .../academy/2-git/2-git-branch/readme.mdx | 208 +++++++++++++++++- .../2-git/2-git-branch/advance-master.png | Bin 0 -> 7140 bytes .../2-git/2-git-branch/advance-testing.png | Bin 0 -> 8146 bytes .../2-git/2-git-branch/basic-branching-4.png | Bin 0 -> 9838 bytes .../2-git/2-git-branch/basic-branching-5.png | Bin 0 -> 8843 bytes .../2-git/2-git-branch/basic-merging-2.png | Bin 0 -> 6225 bytes 7 files changed, 205 insertions(+), 5 deletions(-) create mode 100644 public/images/2-git/2-git-branch/advance-master.png create mode 100644 public/images/2-git/2-git-branch/advance-testing.png create mode 100644 public/images/2-git/2-git-branch/basic-branching-4.png create mode 100644 public/images/2-git/2-git-branch/basic-branching-5.png create mode 100644 public/images/2-git/2-git-branch/basic-merging-2.png diff --git a/package.json b/package.json index 7b66c01..f37e27a 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "lint": "yarn prettier && yarn eslint", "eslint": "eslint --fix 'src/**/*.{js,jsx}' --ext jsconfig.json", "prettier": "prettier --list-different '**/*.{js,jsx,md}'", - "dev": "next dev", + "dev": "next dev -p 8008", "build": "next build", "export": "EXPORT=true next build && EXPORT=true next export", "analyze": "ANALYZE=true next build", diff --git a/public/data/academy/2-git/2-git-branch/readme.mdx b/public/data/academy/2-git/2-git-branch/readme.mdx index 521b3a1..c73e223 100644 --- a/public/data/academy/2-git/2-git-branch/readme.mdx +++ b/public/data/academy/2-git/2-git-branch/readme.mdx @@ -19,20 +19,220 @@ import { themes, Image } from 'mdx-deck' 1. Merging -1. Merge conflictos :scream: - -1. Pull Request (PR) +1. Merge con conflictos :scream --- ## ¿Qué son las ramas? (Branches) +Nos permiten hacer cambios en el proyecto sin modificar los archivos existentes! + +Tambien facilita el trabajo en grupo, porque cada persona puede hacer su tarea en una rama separda. :twisted_rightwards_arrows: + +Y cuando una tarea esta lista, esa rama se fuciona con la rama base o principal. + +La forma en que Git usa las ramas es una de las principales razones por lo que es tan popular. :star_struck: + +--- +### Punteros + +Para git una rama es una etiqueta que apunta a un commit + +Por esto es super facil crear, mover y eliminar ramas en git, solo se actualiza el puntero! + + + +> ### HEAD +> #### Es un puntero especial, apunta al commit donde estamos. + +--- + ## Branching -### +`git branch` es el comando para gestionar las ramas de git. + +Por defecto lista las ramas del repocitorio local + +``` +* main +``` +y marca con `*` la rama en la que estamos + +> ##### se sale del log apretando `q` + +--- + +### Crear una rama + +`git branch ` + +vamos a crear una rama llamada `testing` + +``` +git branch testing +``` + +y ahora `git branch` muestra lo siguiente + +``` +* main + testing +``` + +--- + +### Cambiar de rama + +`git checkout ` es para moverse de una rama a otra + +vamos a la rama recien creada `testing`. + +``` +$ git checkout testing +Switched to branch 'testing' +``` +Mueve el puntero `HEAD` al mismo commit apuntado por la rama `testing`. + +`git branch` muestra lo siguiente: + +``` + main +* testing +``` + +--- + +### Cambios en testing + +Podemos modificar archivos y crear un nuevo _commit_ con los cambios. + +Modificar => `git add .` => `git commit -m "test commit"` + +Luego, nuestro repositorio quedo asi: + + +podemos ver algo similar con `git log --graph` + +--- + +### Cambios en main + +Hay que moverse a master... +``` +$ git checkout main +Switched to branch 'main' +Your branch is up to date with 'origin/main'. +``` + +Modificar => `git add .` => `git commit -m "test commit"` + +Podemos ver como quedo el repo con `git log --graph -all` + + + +--- ## Merging +### Basic merging + +Crear una nueva rama partiendo de `master` + +``` +$ git checkout -b hotfix +Switched to a new branch 'hotfix' +``` + +`git checkout -b ` es un atajo para crear una rama y movernos a ella automaticamente + +Agamos cambios y creemos un commit en `hotfix`. + +Modificar => `git add .` => `git commit -m "test commit"` + + + +--- + +### Fast foward + +Para _mergear_ o fusionar los cambios de la rama `hotfix` en `master` hay que moverse a `master` con `git checkout main`. + +Luego hacemos el merge con ` git merge ` + +``` +$ git merge hotfix +Updating 4c0d929..83bb222 +Fast-forward + text2.txt | 1 + + 1 file changed, 1 insertion(+) + create mode 100644 text2.txt +``` + +> #### Fast-forward: significa que `master` esta en la historia de `hotfix` y solo fue necesario adelantar el puntero de `master` a su nueva poscicion + + + +--- + +### Merge commit + +Es un _commit_ especial que tiene 2 ancestros en vez de 1 + +y se crea cuando se fusionan 2 ramas que divergieron. + + + +--- + ## Merge conflictos :scream: +Cuendo queremos fusionar 2 ramas que hicieron cambios en un mismo archivo puede haber conflictos. + +Estos suceden porque git no saba como mesclar el contenido de los dos archivos. + +Queda en nosotros solucionar los cambios y terminar el merge. + +--- + +### Conflictos + +Para recrear esta situacion vamos crear una rama `nueva`, modificar `README.md` y crear un commit. + +Luego, volvemos `master`, vamos a editar otra vez `README.md` y crear un commit. + +Y por ultimo, queremos _mergear_ la rama `nueva` en master usando: + +``` +$ git merge nueva +Auto-merging README.md +CONFLICT (content): Merge conflict in README.md +Automatic merge failed; fix conflicts and then commit the result. +``` + +Nos dice que hubo un conflicto de merge en el archivo `README.md` + +--- + ## Pull Request (PR) + +
+
+
diff --git a/public/images/2-git/2-git-branch/advance-master.png b/public/images/2-git/2-git-branch/advance-master.png new file mode 100644 index 0000000000000000000000000000000000000000..c3a7ebe6b3a0db4a09eeb18c7648f0b236a5a1cc GIT binary patch literal 7140 zcmb_=2T)Yovgk0R0R)B|Bn(+VK$IYPkfi%E9>i=D<*6!8atE;VF(Ex6001CGjSQ02tnF(WL<7mc2a3J#Ez zl*DZBPyZtXgWuU%!EE`PXM1}Y14IS;|CvMlL*K)qLjr?g-hWdub44ZC`l{kB4Zi)SEEpZC69i{aqqS9qeaP=qlf#%f zm5((uHP+n10gYZedd@YF35W@Ub8v9b)6=hStYcJSVPVo@|R;Sy^FXVp?0Bokfk!x1-P+0u8Yyv#13D0f9p`-O0((t<}zbbsj1z zDuc-K+Tl?ovU}Y{d~|+hO;3Dben~_`WH^`M!3`mp!#SAKTE+W0gQgrWsm;3@!aJH8HTWHGPOtc(9L-&U|TMd~LCPb8U!4Hw=v) zCnF`GZI%U()%TA!|*=qfPh=ae<~LT~qOqSwaj9e0-+I~u>)F*7qVYK#qa4>!hi z&dt&(zMoBu-7{0#g*h+ORj>Zal4W8tHq=irRnG$yTixYO^39=*G67e3SOQri<2$$YxC1hfjm60iGtX|lH87t zZ(RkUOIfL9`AO-H_g>P`6~g3=ykj;pd#v1jkr{-o<*9k8?>(PW%P2SuW`bcUrGr_r ziyt#%0-Z9#9hQDBnMz5G*XU0SHF$=E?;FP)8A&F7jNiA>oiJBkKvtvb+IM|p#}i>a zO=WZWRlzxppR#gPUq^1$4pyaj!}<6syZgd2vd4oyB)O>Y!gBfxJ{f8}IvC&TPBY(+ zD&CH7WR$h~nd^}RGx=22bfE7(3DZD0$kf)?u9!P+hCV+s;aMw!uLkDg;^H?z{T*is^ua7lhJ<=s4@!`*J}= zb!|I?8*!Dl&dG}`5ef9*|Y7+xg2AA{J#bK$rud52CPd!7DdX3DIyKw!{x**h&Oy=Go`m{mfN0tJ{ zp8uEUS2N6f|>Eqf_a!~bM<+6E+PECQa2)2+B-_eu+cOJz4<{Aixo`l_Gg}9^Gm|WQFz@dy= z>Z>RAK9dE8K%9N^>x*2gR87oo@d&_8W$_jd@ZxxZ8l#VRwfuq%{Ai@Ku4rA;RBLAirR{+` zct1j@WHB!OH_!gJ$N#t(0uF=%{KZ+vUIkC>j zwxr&_?-V5X79)h_))5K1;;t4Y>0<`-ho~y;WfS{HLU78=v2Wrx_x=8SQudX zxu{Ls_^_Yj5cV_jCDL`P6Al;HnZ-w^(5@GrL}0EM2tr>oEHx} zq0zmu2B#=NbVlEBZ5QQ;l;B_Y;*d2KyKYSmt+A1 z_NJV)U;t-p@-zYFT69?LrtaxU*e}N|#DjFaTM=__d5tLIcV7eHc-UfZ zPW@L<6+F)(Z0Z$nIyk7K2VIW`RY;OqZ$`+`b1}NfKIpvRIq@y7VVhTtfz^;)=`vVi^amT)cIH2bD>lSptYUfJIPgWNnKWESkb_kX! z%Zf9hM*P2ZdI0#`N~*^UxYRBSS8XQgjod0N+!2_} ztJ!UE8QCczUH5dj_j`Bl#o1EI_IAv~D@@{btw#Rx%HBSYihFr+SODFuV)i>!o_v$Z z3ATLE4&YcuL6-R zSH<7=7DHNj+negjXr2m5+uL5I=QszXJx*Y_S6Zz+J&P2foprV*0|`-w=8T@5Bx>16 z9~;36&4V6WU*&E0uH@FfWktM=dufT9ZC)|yV(cyxadM>qQ6o4iVyp0mt1g8rEGRGh zk3()>dp*TDsDGT1Ku=1uTXrTn;qd?lbIWs)la>9x6(m3gq7JX88oKC7c!ljy5vCVu(bwN!<$c1Y1ilYo>5C($&`J*Jx5MXts8d)}r{K87 zOPn^YG7 ztsc|ca7tt9h^~3-4d|?C?dMifb6Xx>n8x;9iJ!}fD}Kcp9y`tUJ$;Xw%Oju$B!jmQr^eU3N`LBbOz@TcL*9xwBFXg91WkR8!2WU!$ zTO7`dZx1lZ?t6{zE6pr^VJR~bQcT@`%@-3&s6x`5ber4)Bemo0TLO?o%rH*MBy~jh zO*!crY*l%PQwPJXOad5s24?#>lG#r<5iQy5cr2f7g}V0P`obSXG(L57%Shw-8n93C z=oC{8g@0DYz2$XE(bs?WUElULRcdWE-)=)_KQ{Yo8=5&C{BRY8Iz)=Kxw(k}a9oS~ z4o1Q|ekQG8;K)AL&Xh;oX+ z(0o=o7Ojp&7B+4comN-`KHxm@isgq`zn0&_A5Jkc9bHO|J6zZ3%ePsoUtaWBNVj%c zsGl2I9(LOT&)qEB?x-JD6rpTl$PecnLT*gHSmRo)?z1@{g;HxX$6x%ep1ohW^D)fsZQKW|_PMC<|W zv@72Y3A&%SRLkb-<>Q&Y5cz;(p+U}$@hak$WHcPiQ)lmMFmnNe4${Dc2V1@g9 z1iq`a77UA+EkrWbCGeZpGXdpy-aJf^SXA=KPI=9iwizqMDF=*;OLW#}iRZR7!!sXM zJAPd4rLU(Osow6Vh1S6#XtONy z?tRutK-JwK`b(JkrtGwWo^EeLj+jHZfdwEIo5w$bsONm7%1uNTmpW`*mR~R^b#n#r#0B3r-W&glA*ndAWS+%qq(2R3TEg zQc8CCc9(7MS`EHmRJwWiF$P??M_9FXh|7C0+f<2>1oYyer;Ti&_PZk9_uS)Q*^%-Mjy87)PAQ8_{c_^H`^P;5YB%mkkuaLq zrJ-I7w^rRg$oMw87E<1S_rZ6u0HMb_B%hbVzZ7tHg0GDStRS*6Ym0>YU5 zA&Z(iFyrWgo9j!@wxgCeajB8r5!Slb9%bfvXJNJAn_*-ixl|lfd3K)XffCY%#E_55 zzVaNNRbfmP8iWTK!hNEm@-SfUG zm{FK@Phmy%H7^2fwd?Af4d)*ZPFbY)(4-lfK8!b3D6Lq~{Z(=WT`(@q&Wu2IbcV8O zLOU+9Eby?+_B<(X5{S}_th~NGQf321WESE>hMHdJmFT=Ob|!I;5OjE($WbrQLbk1+ zSg4?qRN}r#g_=g_M-WlPr;|{Hx~Du?aQA}0)F0(J{+be2i)qT=_O)bi3@;O-EV&9~ z^9ftj-s*nPPmE~rX)&%zCi-BROUnXDWv;PL+_&MPJ5p^g^tO7XRYjB;9>T$jco7NQ{kDR`uk{m05AVEx)G#l;jg4@LpdhQOax$mvqi^ z$7a}+1z$Ipsk5C=LV~ZDuWsfUB_NC%(S?7f6TwT65162fOzY1oZC&EFt^ynRK{bLL zy!MpJyu+vN?6UoUid)l$FJ4|9pE@v|R?Kj!bX&Z!&(MhTB5HdKk%`4)dtOV<{2^J= z(JRD2@*T5bH-4>Hc-mFGYlW5%VW4~wo@`A`=M9I6pVj_}TbIP}TfAec4TAKk-$%GN zsk(Wh#^-0lJs$D<`}w6;)cylS1=<_e%%!cG`oBteN@s5Bi+EJX0AZZqvj&MP6ysk- z1`AVd{x_9Io~GwCg@DdRzz-(4^#s+B;I)1VzzOt4JpEwEIo&V-5hn8atJt0MOYJEN z|8A$i)WsNkgi1k^fmg0kOHAsL z4a|{N?aV3E?wBxgBKpW)Us~-OwW(3Qp&pb>^MbIo#W?a~Ybn<+b%O(#NLgJa+r>S> zY-CK=H#m8u z3hZuJ1~E|vyjPmkjoCC<;GUs}0Y}Dte5n|77J!F=ECPIaj z3_=){_}FCOM`=lV9=&#o)r4!*Z#Y5j7ZT)PrNpG|M{bu-GosTM`*txpW8?wBlFzOz z<4!UrP4zp~4HGPQ zcolIIgsSX)t?7g5aa=pdo0UCZO(cEjWI;lSCz-V$p|>`D6g)~r7T`HwCDLJgWTpBBIyDvVtmJiA4}1Abkl@2re_T(Gk?m^y+KtMa5X z6V|0H@wZmTeE9n4rDlWSSpDeeg1W#^^irP)4BBOtf`=iBT>w-MzcjhYvwm z;APvx&1qZFB>qRQq4&o$whH6i1V~LG;|<#3ugr&Tr|T>x?)`imxFpx~-eWyyRQ3TM zkGbr7lFqiz0!njxtHe`B94$03B=Pe(gKcLO{O9XoLgMvr>uK?~Mv>oTI||$&Djo7c za!F8vXJ6h$<@_{yNjN(cH~h|9CX)r7CW+>g+3kaodZP~o0xpEk#&2cs89*{4{RKr& zkM&L+4?6j;ni`nZqM}2ZkY~Rq%QzbymLz;TvfSZbC`LG@PXuB*??6l|2?4|Z8G+FG zHbTpn5Rhg0H1Nxv*{O7jM2aS#nM+PJy5?8cJz!JB*RkthKoCPd(*qpZdFL8&-`}*R z->9=SOMbuq_L)x^w45&pHMtBf9NYXQ9Teyvt=$w&hjZjsPJWTkAOu=p3t9m8?1kWA z`7sn6Nth1*i3Q+?-j$>!?XRCr zW2bkp{!MYrj{}Sy|HGF5MqM|zsC1SZA6LK+eZoBKJao%^y1#KNL1Llc&_Cmk<$rSn z$w2=M5YCMi#9Q1pN2B@i7U~)96K?E+Ip(8PQeFYVf*Na_Cv@0$qw4B;-m}-6N*TFP zv!2jlq4b?nApx3}M8#H@0#Bz|FaM|Y?jo5~AeaK^X$6<@C-@ z33Yl6n}YLKdIWXJ1B2G5V5ibI{QSX*`Fi@zHIv*pKa5GUnYv4|>C}~mmsT zd$}(kmyX-dcXo)B@?(@Tzvu3K zzRa`&(Vt~y)H5YYEn?TM@vRg+=aTwiWePRRr+ZxR7gQ zw>#U7|5_a}{6#c$Y6i;G{gd7^$oaz5!eQ~r5OKEDJp|V-B!L5A4HJI;HF0~`K9!~@ z%C<)NaLQ6Nw78C3!A}2f+S9uN*ptfseBo~}E(V4r<&CetQ5YKU7#M6{d34@8s=sFD z>LIat!(E&`G-9%vHnFxg(SFi$wghd@LOFUGIaBw z=){!|gPyY+>25uRi8v0IDGq&Qm#&lK1owh_R8C7#F#qNQQC(_Q!+8?Wx;42vR4*rTVXfwB;6rr0*miIHYd2Tkt(DSWOv@7@-%;gJCTKRnISH#nAi Vbpk{v-Qz#vo+_xxmp(Cl_g~!|`Yiwe literal 0 HcmV?d00001 diff --git a/public/images/2-git/2-git-branch/advance-testing.png b/public/images/2-git/2-git-branch/advance-testing.png new file mode 100644 index 0000000000000000000000000000000000000000..312e65e15460e348b38a631c754431fc0b11d228 GIT binary patch literal 8146 zcmbt(byQnj^KPI4QYdZk7AORY6lkG^7PlZR6n7}@F2zHEl0YH2TX8AwTAbqU?(PID zR_vzl_rCZ0e&7A)u6xfq>tts3HkiBnSO9&_6&^s0MF2$ul-p=;fV{M_xU~7F{$xO3GGHJH z5bF0O#NR8_AAWGKfkLgLP#eFb8Ggwyo=7vC$vq22dW9n4AxOk8>E|c1^mli6e+@An z9&Q{QZ1$%BP^iscG7RBgzZ@QJqEK7tzu(?Ypr2?ogr8do5+3UB74iqf;mL`|fxzTZp^3v;ml%^n!x3`y56C!7{1klEk7+$pJ=x|R>RS|mH=oHX1M`Ioy zZk?i&m7+U7**!kmJpDk2hB`XhURs*j+Fse&UHg;B;npE)6{Ya<@L*$OV^K;>$lOrp zmmJ&b%EtcQnwo;Fj;cIrcTrwaY;tDu@c86NmT7Hme!QoAb8CBBi)UvSWn*Tbr6e^o zH@memqADvP^-lam<*l2G{gIJoX;sZTA>NL3mgVWWu55vs;fB4<>HgG53quo&13h|L z8vR54nYl#^FwLdqh0YW*S!p@HpeR!<#m#! z!>u{X89DlfR?}0%K407xr#h@GEss75csQ6R1i&_yCpYGL6VtwDXC@D~gdtr`hwBjY z5q>uIE-S|GdXhow`q0pjz_sD#xNqMkN4uuOKJOnK{49*hFD^-l4nDuQ2#JcX%nV+2 zHCVNj+Se1QD@~vK7ChRS3bWE{t4iH5mQD@#n)kJzDNJ7;8yTo^E6Yzl(Uur2(Mt2T z|757<<7U&;*0#6Wy*xKG(AP1a5$fZE=xQul4TI0yDWmL-r@zO!dU)6WD5-C(@2fDM zb=Px&!6FfMc?kjY-X`nz8jJ09Qc@ZluJ+5L-{(7qXG^QP@?{reQ^pcPC+jPBEL4oF z;EOfcOWyFs+WNha(7uLD4@5v$iPc)5+i+RV+Ls{y;A15;F_aw@Wt9Lfhs=;Y#0Hgr zP{{hzQ#+P->cHUZcdhEdF8D6$H`tBTz_A<-lG{#g*^SE|Li2%fH^=n5sj$^3i?Hp3 z$Kcs%0hU4ywPN>^JimjGi!ZX4nchF2?n(dvlwe6QsIu$KUeb-6k_LI_4K!&!Ni3!u4uP@--x5GX^(m+D|rFs!Y zm%+ClgE5|ZgF>EUloX-bx|1C=!C^(>xW~sgV(W7WpNr3VHr-JU0}W~iWyX3xk2P=m z6#A^r7d?DT0D&4{K_CVghyZ{vp#U!kKo|^wfB;}1S_c5(5C8&gfI>iC5HL^}{Ktj? zKmY(xfVw&Y^i>3e2|=};mka@wro?9K5o1gWnt zYNGn>Tl``D7>V`?RX=Xd$4psLqPQST(qc$nHdDOCs9mh2#imQWgnWW@$EJ!%V@Yd- z9(#PI6HQBakxxZn7SgB1^R;$@bTv1x1U`Ys)o4bQky4x^7#;ita{chI+^0l0IoFTm zDJ;}xcK5g?d6e>4(c0al*!4)7=0#Ednd)@E!A;jN75djjr{Ome`$4 z+`4%i$^1f6Md-uRz$p$w5M~Sl^1c6cj8WvrBvOX#r%h}JC3{;Lweri{P-Qt8vT<`q zJPle#38QFmHSDJWS=$?iu3q3`)z7Rux?K&EA38_0X^po<2I&xEZ7K0ro-j8V9(Pdc~2GFqP!Y4njmuv^HMb~>TL52*Brm-q(>Mk zDxxx0g%WQSp=w;^xu2zNi!s?)5bdm>&*$=VD-KOx3!bknyd(Y;c~ts{j<{lA;rIG@((ZmO%x10)aB4UYMl6O0thIs+WptE^yTl}Csa#Z zcfuTA?Y$TWr#V1?Rw=<>-1!IbADaD5ssB>{%j;h%|5q|^+!oJNPC#5+QA5-`%flfd z4?Ped5=(>rvGH4rdtQ=O3%om>x}0ff7k->+KIX28{v3P&!)kduQx}yq6yWOpcJ`@f z!7)@DaEQI@!V8>kpmxG&PAG5$l@Sc$V#Fb==Ykhrrlc_d;t=Z#(qSZZ@_~bhV zB$v%G<}3RAa|P(x3IiKJsm%PVaLGL`7)BiVSylI@rTim+biW$rPuaOOtY)lPXOOA^ zE~XdW*?~?aekH&QuihEeA+u0@xO+YrOFj6}QMd7K>-Mr*BhY3)NDh@?D;U2_aQnt` z_{M|EvA?o6=4e4^_x6>h)Adp9IrThF`Q%r@_@i!uZt2hx=ZW+yN3_=>n=|wl1T~4p zNAF^PwkY&&g?>T*@5*r_RydfJCWQ875NY;CAw?e-wCl$fW#C;gLl(*WHQ49XkFJg+ ze(f+|ea*56QQMb-BRW|I-z7O@zVBHgM9e{ugM&Vd&r#S^&BUZ6Ww*&U%Guai`~vI6 zW9XZt7rYrw4zE)yUKx1zZVZt%(qF@#gP1IA&7MDE;D6?FOhLJ??$*en%lZ1@C5a}k zhB_iFbGRs%&5<@~=!crsv?1Pi$JuM)l}}KKHPLd_{M~_U4++oB&q=BjQOpkXUe}=6 zX7bIe0fg&LUA_&j{g$l1EXDWWhT=~^O-{Q#9iPAtbjJ85wbt@^b(Pmy5UQ)Zf?326 zvZZqQZXiYsm%ZYnH55iJa0!@@?zA!|S_wiVG@{`VIqiPqw{j4>?m5Xpajq{dT ztxLY`2+bV`TbnfNQn1pL!=tqw6L;c@dTiE2^S^ia;V*Kbakvb;JaT2 z8{J_$8?1yx-0jHD%XM=_lo49G^qXr}^v7b0%$72A+4&9tFR){9fm*g zUt+njiY?~UcNV4jJpQg2lXc@S%`9VB!r)&VfE4x&Aus7#`*Fl9^Gn<(WMz_X=2yE&6xFHr`65`)qR3 ztjpd>yb@Gmzn>_#am<;yN;h@b>;b<$hhGTc{oT-aoM00Kx9G?nm~s3fsfj#gXZZoG zWPN<3jO(%A@HRUvgMB_$LYBPX4Nv3+u z%Au}{>v4GmY5@8JFQ|SvOg4!z{2rF6lQj4;$ydF+k}m`%ySj>r|KM;G%%Jd2wxF+}tz`o@@di*~*1* z!lx}9MsHt3%?#$Y`aNuoIw|oY;*M5d`hQug*-}Qi$!wioZZ-o(rW@&dDK)9~27!`f zMjF;%_Y{9Vb0ma`Y7`xnKtgW8hePu5&RgHo6y4+p=|P0kAN)}CwLM60Mq7)*(v2LY zX|XTwG*EI0^sRQi4R;)d^PLq}L%0hKJ*$h_PFI|4;fDd(>1^FOjAV{gky_Z2LMvf$=3kv-Yuya`VV&};<1O3WR95_&#%fRhh?%XWBtS# zG&NIts6F~LQ0`o&Htl6TBrUht2nCE>$s>gu>{@dmKJ4N*V#X4+kl4Qr9~4lKUZyW%q}xnOUA~iOEgQFX&Y* zq$lMH3!cmr$lBH5_tZ1gy4yph{6=?G?X@mSa}Z?g|hMq{!G$d8kY^FL&{F$TN5H~UhfaH8F; zL+Ub6OLFHe<~ZcpN?0;5ZEV`E_cbHiROtsd2{KdY8{gM~PR@2?hTCjBy1X;&uc%8t zw_tu(czJ8aNbL9JSYY;U+3$eUBB@lFm^auib2 z{NNxRW+wEORoXEg$BIs37kM78K$zQFAf5(-svCJ4;q}| zyIt){3}aK+BIP%Jx~Ql3rWu7PA0&*+hC>o*qV!*X&UvNG)8%;}S;g!6f=@J|i`*x> zEU&4E->i{GNJwjf&}KwQsjAA<$Q51cPdC2N?p76za@lSfhju%7@!2VYb%fdzI>iQs zq(1wcyHxcwW0LCX%n8~cGjDy`A*Ptf_el&x)$aq<@9l%{C30_3PFmg-A!MbjHX^^=RXXH zu2+mM=z}O3k9N_yT+*Du zNlR1JcsOkc{e{VA?tDwCLN$JZVK4_hK_(NbWGnXs}+6w%s@Qu)2MAu%A9t>DDu^+Zl_~{z~O}s3WB=?~_94$duxCVy#TUx<}YL z2C6R^Zv+;Ps+UW&8luHtTX!ikjUc2fa-Hi36669nhL&_X)!3pd-&%7Qkc4J1aGZD= zn#~QXw%#g`tDD9Yytz-o&^BP6#QH`-?WP$vYC@Ud7zz0rEaN2bEOOvuw57SF^T;~Z zX#+`SsvDD*;jX{5f2dWDVwzUw3BhiyqajPVpM)rpVKe5kmIq5OE5n(c~{us>0>*eye` zV1v7R8GN>58oit%o#H(5MWz*vil&rDJ#UdyWsoT6@$>iqzn3pP#$1Bwk4SykqCa{> zRMNkoRsajIrnFLK4OhIkJpG}i_~m~7iU+H0wjYoQRdumvJb)2R)a6^QzTM5Jc&;3F zoI1XGqLCQY_b$U2VaK7JK5raLM<_OZ_({@Q2BsTT(@&ai{cW}uax70#yj4Zhg>1FT z_N+MDHtS0u)XXg@kXd!x?lC^Uh$8M4ot(HOwAn>Gzo&J)kldaw`EzIYn3wFP!12oCFybzCS+^p`1m7ESBPfLIBOzS zNqd!@A1e}dM$~cCd-pz<$woem7_7Ge zG}Vf!!oACmRJ`}u@!!r8(Gg_BYDO?%|m{Ajlc8@epcu2lfAPV2%YM=I$a#-8_L}$3I0lX-BU?} z1H`3A=Af&%XJX%L}Q(Oa2P!+0MM;zcNwAi|2q`f3u6t7f<+6U zvQ|Z1!SgpYrM+_j`L&C>NLdat8~3x^0-~FEo%-XCzwv<>IC5bD0bjJYZfT5Sp%7EbV+W}yiyQv-eTt9;QY0yNcROZ0G@FRYGmV(PIuw_yb+em$sI>gMgZy~?Ybv3I{z(80Bn23IG;y~|2CA* zI(wkzTZTh?)~tb{@<|r^w=+MhWq8b|-Y0Df!}|iC1$XQh9Y2QLOypU9+?{?V0K^=9 zY9Q`jp2TSC-iUM^eLs%V*yZjrTF_v)d{M&2&hyr&l-omec-6&SFs1WipGu7>Y^?Rk z;*awc`tOE6lj`0$%ie?t>$Q}t8%U5H*z-6DDQx=E5-fV$WP#TF_+-Uj``WE5|LQsp z6RaWbTIM7Do^iDn#C|~jSTX8-5;{CK?cz))D*IzwY0Sj_0Lfaokv*3g6ax7Ofcl~O)Te%uR){h@ z*A9L5T{vn*MKpl`Y4Di=%;O!z+~dv&Zw`V_G1i4X3=I~4QPquga1qDB89`C$5_Eo% z`1E|NLJ9kLEGdC9u-nR@RAX{|SiP@|5-D&tmXuuYG}s&VkOQ0cVPU<_DlgJhFvG$@ zLG5#>eSR@LZ*~o~O|L^;3?t3kXT{!A8`SSIYRQ8IDLoj#z1N83Z4}?Y7qJ9qonmk%toHO8FMD0I-RX!2y$HQb2YRw$=7Nx?(fJZeM zPp-n+Zxn%u0DK=!8z=;biAe(ngWv!lCKx0P0sKpVdkKSpz_LCVQdn<6ctN*NRJY*l zN#lxf^K9O4?{QvrmFgbToDE|y^YOj>`2l7CTd7mz=_+{)#`EH$pS9L3y@06d#)+Ad zNMk_Hqf2Uy!q0-nPrb@GQPm#{6P}28l~o;p;d?W^A^_ttcZT03s2oFjFZL>%Ncb4a z1T8r?GTtk-SvBC6@9-6P2T8HgXYwLbw&na?GGU|l(u=HMR^>rkZ75MgGu}?#2e{S8 zP6GhT*dFVte&Na}L-U9B$a>$?0_>8O4w=)_D+&vt;^Jac5Qb{r!Vlx#n0Xbam0cZ7 zjGk%v%5ZT22nYdt2?H=O{zLe?5dXU(e+z%P-S!HTU)(9aD%`2ecRJi;Q@ea{O=ezS zDd_Gp9+B^Xcw7I#Rr9Ht`w0kWdqCy$pU8jJ`mf@OKp^1%5%HB0GEI#k`-`lkgq!o$o|w?@IPBqC z-=K)5-KHNi2=*{)%#bz5Mg7(0Kw)_p97(4GqO)87WuP0_L@Z%gBGW{{09Mw6FcMB% zok_nA!_(+~ETBbpedD&EfJ^t}T<4q!#QZ8OiWTQ1ia?_0@d#0O$C8Q*fBbkm)%V9; zBWaJ}sVirYX?H=k(9|_5BL(*qGU$cv)@X=`Su;99jBxV<#YCvsqp$M42Kq;g3X)7= z+;FdQbs{O#Ji^*KCgS6)6)91-rgL^tUQp%_9`}y<@x{f(EL{)I zt!S8b;|htF#vb@W4TcjV;QnVsSUB+1mU~akB3G6R+@MtQSXWB^+h@vZv#^6Mg!OHHn$IWUXzOoXi)J>rpHeMI0Sch8{7hcH~G&! z_ucQF_r2=s>b+O3TD`lZcfj&06*xEqFdQ7b9|!@4gdXZC!yZ6$ zhynx-t~M6!$q*6d!#k-+iNaNlzdnSq;XcT#Nyu9`Tr1G6F80Jk_+Kf~T`ACB$-O;0 z+l4~+&d&B@!UJN${iD8w#zX|b+~_dBs9-M`@*=@>El>OB&v|UPe{{ItjUpY)hz$>b z)hh+M8#x+Sdo53Q1*;0QFe#Y(FEvG;Qn1;EJv zs<3#V(EXT@K-dsi{TB!`U}MkD{>HYuy8{DHPj{ok{9yl8v8Cp^`ACPA{?TJyl~Y6Ug@W9T>G^$4t`%>S<>K_t{(+sfm7Rr|-Gt<} zAD!#N4XYEgd+QS$^Q((13#S&E>usf~%Ia5!iqNB#r1YFiZSjr#f=heDUwyTQTXUx_ z)=REh2gcHl9s#*|`Af5lvo#efecjU)`771AtIb`PR~JT~?c!r1qI~UVCi;4+Q$xNa zmZt_BhJ;q-L<9wgdRXcXe=nRH9zXSVce68}$xo~*$=$AKUb9r_YOB`LHmInnYyB1# z>1tfl+;*JvEhiy3F~s#-Ma@!P?a60_qOWO5QT`tyX#8OZ!_8SmQ5Eh2ejM`1sC)pv z@Iz+0rv^TuUITA=N&B5*e!bc;++u#ryxy53y_X=sM#g(($i8Y6b$pKA^ed2jYcXjL zMUd{JdxaQ7mb7*CsJc8yt^!|vaR(aaiDMIUuh3wpZHkV0#PjoW?wK4d???NUMBS|P z-d>_3D2*gs2OJz#gp4>u&3)-4OXq{C8~Ff(?f1FIO1;xhMOA_MO`pyqm(-87t8c0* zZRVFwPnwp~J35GO``pJj-e>*Ybz(CqC2Gg<7*aY%xn0p|I(@S{Ibp$!O{VQO~U`bJYkQ%Oe<0M_Q(`J zsPG&5hAs`G5@p1s1WWW_kdIfF*|(gBf&nuGjyKq{8OVC)^Q$jBlBRN1_Z zyASv@ns4#14}`LXi-HTfvM*8j6k-L1JW&-A%@c~{q~ctU7tVw8CWjoFEXZpjfDJ3B z78Hu;83_!Tff}?9k@mC_s<6nTj2$usbjQ2Cj>z18Ncr43qCT6v@TCE>O?OsNaiLa| z%h$%4e{2U|mVyQ=Q!6h@J48-MV zbuTI71>EsK$&?>Hs>P~_oOgrckyR9*+etUK-yz#A1@@K3FLZ{|!&dbtq6H)Qk%q@s zW0~3bl$BK#x2xB15c)U20}$41i|3XLyHB#9n&)o7sx4!|&6{Rf@1IMOc%2TKbLF-^ z(|DHk3I;^E^bmQT@6kVgfDY3no%=r-XBICEzRNthC2t(FZFXZ%>i-;DE-U&}8wITi zL;79zFln_c&s|<8tihg_LKgTG4zy@)do@z25Y02(05#Oe`|MNV*)^o&^%zwVNMC<> z)8iaZ9&AXQp1-Xa(V>`EJ+Gc%mIhLJ%~NBYs?N?J9mKCzd~kU;`&Rp@%nZTU!=#M! z7k+P(g(zdLf3RUzjx0hiYBsX*Arm1mPur&qnao$cBqkKLZDb&}NvpOMj8>KP)fJBHe#3Z4!h6b~s%qa#0` z@N1#t2eln%_oy>Y71GJ+LtU{g5>iRR!4WsHu8#@`G2f9;HEY3x9EcXp!$@AQ$jD=* ze41nC=DdDWjZx;UCQlXw9!R~m#ERYaj0O*`@@pHVdNAO(gJ=7q9{bQG8aCU0QCz`ooFwQgv z!W(d63z#f=Ugp*KSwkS6Hl(CPpFou>brNn?`dQ5i_Oj%JQ z=Dj7Et!6l*W~oE{mJ;6ro(yG}W&Bogw?c6SDS06XmIaAkDe!CYmOqtQ5(bLI?N@r0M22HCG8t zKC3SBBfvu~APt0aUz=OnMtkC+!_#Y}CwECmlpvsoSt5B=_-`)5YJImWa-2fbF2k$a z15T`9W?g+dcCLFLByGL}O^J3vj3RO|QS2eE!(JIk31%nlmJMq%8WZT0{MUiCZ=Qat zKw{vBptYQwH2#%oJf7fAAvgPCGD;3V!rJhY`CyW>Jq;9CCOeI*&ib+_qV^V4k{@eFkMcxw( z+O?M|XRL?zwP42BZOXjaul!qUz&t}uo=#d7rp6x;EA+u&VM2%rd(3txF^Sxdw>GJ> zU2ISKrug%wjid`ZBlHrrS?4wOn0zwsNt?V8J_hgDBvXtN-*C-Duk{uV8t~l?)d%Ax zvPKkx%niRFLULM#WxQD<$@OsWX|sKQ+jI^ET_n;z6W+`F?4R!8NhzAx=$OhvQ z`+;EF79^AyGf{}}KYssk|Ct^BD`)(Z6aFJ<;K;>wieiK7z<#;3fG-OYi7zyr-lkI) z&y1337DmD8w?s1<8gW;<3{AV7pF-9G=j-2$zJC@y3;dF%4kqmx3!>3--1oTs-hO(_S}wAZ;rT`f z`ksa6)la2!Av`cur_P54b}Q(6KhFAtC3E*&6zuvU)JWISkqnIO>-_l`L&bpb3O$u; z=!rE-q7x-7;;D`3{BMhRW)pyjg&$@vpVn?Qr+?nIKh0XP6PjJ5KV63ojToe5P1A>J z{mx}kK@lt3bKY}(INK@KFxP*2#-g8FOz+>q^1R!$p;NTc>$H+wT4?k=F8$*bYpvv` zS2^TmclOK_=7=^;y7v@elM5Bf_T{^brC9KY3zjjpe7-*`FAb(2{d2$Z6GKX~SU-V- z!gj&^(%aV3MWc;AxgO04%VyETR{uwM!p_N>eU1IYx2PKLKM_jJ#V%BrzHP#8s%AZ- zOe>BX&0nUqKRj}i^Lz2_1|)l@{&q?k-iW-DTga zTw-dwH@bC%*)*QbEe?$#zGm3?e?#p%H!J$M$miFw35Lr-9O`!VBa(W1monbB=7J-En1mc}f7M%f{pO_s}6*7B9nXHq_mKN2k~Z|0WPAZG_J zn;QW^LH3Fu66yyW2NNWWEpURr6EYz^kmFYXrcVK3%HKsLVjT}}~F_;N8Z+TE&%BK$5QwDscqHQc8F)HHR8dE#n z8H^Dx$U|iyR#&3rV~x6{U%OnJk-(NWQW(7|`i2y<(M96IG2W1Aqm}^db>5Qy&c_uY z-n}!oZ6f_G{qv5v*xFNKrRpa>P+Z?~6zi zW_xhRc?-sSXIILGlMB09LkC(!-{pn#65HT0v#PuFbsxB};rC?$xGn-XNXc?ks!Dj` zk$XwlCOgFB$kC@GBA{B0`2O^a@xtexf>&Q+p7I$b#H2U#y|^(b`%5l<=}Cx@OFE~n zLWQ74B{kZwZKNHz$P5~Im#`(G6Hr-yd%gzJ)8_-wHNPgvS;xersca3lp?LCl*-N4e zu*o$#`$te7PibSs6AYb{@;lO#@Twxai8TcfvPRhVmkbtAyRaRRxK4;dv@WArlJw-!n!3_5oiWg z1-T4b-t*~&V+u8PZIQMX;kGGp#*?$^@_k4#>1{U9`l#Dt8F2H#bmzb!TH|NCiz3EHF*Bm68mDbDs*RXii=BaS|*%hnkgKJ|ou6s%Sn)S-fsk9Y)qw zfd3({C!bd!1kNd1MN&{6aHM-Td^cp1p_yTQ2KjaA^Kp-F# zSe+MO$IWt#Y^TUsU3*4%2s$MBUJ@VenSi)H;smunrNktg%h^O{&Oq@{>)5M> z**b<1Zk$mluy^$I^-^#b{#&I(>08y4Yd0KpiUnh{xytvKQ7#zxs=@?!PiiE06}?4) zj2w^KAixB2Hl=lLQ*akGoP6rF8Bt2nf|9<+M2_43Cn((ABm;x;3qseI+_53@35dpu zT))uf`eh2yPk%sew^M2iC_Xl#c==N>61_ZmvDm4p|-rKD+jNUQcNt$ zYZY&W1R1yRc4f^HUww7zOwfwGTV|Qu>!GuVa(e6c9u$`Ek$fm4tNEW|ltB>A1h==%L1x8F#yXVII$8pS!bw&~8ad7f@J(%lfX>oC=a!NticWYNrObXon#0qgtjFFSF z+|Ja@Bf2%gE<|E~u}$|FnaHgqg1V5aK>7;3&dl7@EKNpLm2bFCno5AmonV1w}~6{M%vt=B(>vq z>z3?6p)Eg!Iq+azJ*x+_oE?c?dP|W7G~EAj^#w0ZU#-(C@%cRKsj`J;vTdE-0jKYW zosJV`IFO_z5;frlv=hp*9q=|{cR@Rg_#+~{p4j*hr=4WmiN%`Puc%(B72J{8Ojn`Z zm_i!4Mj`2`#?g-Gl#eIpZ7y!8Ge~b=;Y%|L#acp4ZooBq@FmC*jO1VzL_$~BCb9xF z)gaAZK_<-rW7&HLb{WfE1YzF0Hn`7I=_%7RiaW77`R=I@>^Gp%mAaa}KAAWvKOSU`^hws1e%z#nCYvKxANt zY>?Hmv^eZ0%tH)h+@K$H#mpJEXe*R34X3&M^U>>GtJ}L$GSM_%j9DG(D2%@5EE4Yy z?+RDM8M&W<3#JUc9dz~I`REyki^p0ddffzOO-c9BF^CO1)gP{m)JBRBNl=WFU$CZ^ z?Slv~KnLogZ0@KY=V`40+?j7_DB{)d{ih-yzeHoTrEM-E5`8JDJ#>_M!Yw}($s~9s zB9Peck)uFitj{NEv?|2ODInCw!wEF-a%p+}4%*p%yER1Nh>`%5ZA&>c?cQ#5GG12A z@|nc}{SNj1F#*TwGP%5iOm8!Z|qF##OU#viIAU7iT*@LJ(B=T6Udw9$`6~ zt=(|@kK7wfhd^L_|N0p(&v#-uve-YE*bAlRcSkK7T1OP?+2VZ1zqU6K!v=(LI7l1$ zB6sI|6AOo?P^K_dI?)9l)$OAgeI)9LxK7%o8ayZnFT7M%P1^_2b$U$)Fg=d*XCGN^w5rzD(OyopGREAB4V>$ePqXIzbW=R!Ki+CO3-&6wIRLCt4VjzuQ?s8{o7 z{G9E%y{wgKIZ0Mu1E8(dIZw&4@bdH+&asDvsHBp%T{p6Z+=vmf%fTq<7|!#@&^5*K z&wV2C#S)#C<6OD%%%Av3j5pH=Cr(7p?WB`&JRoVOM8Ciy*5E2zJR|Uu_ZoMKsWm%oJz?QwX z3X@FoH=C~C4ekPyr1?By)H0Ud2hZrN5^DSj@8q;FeqE3u8KLnF?-la4r&v&Pe;ag3 zF+ft)6|?1uYoe<=Yh?63K$FLjKxmb>eg{{nU`l|U!A8&7Jh0hhL`FGQ!Xxw(Q&M?R zhSq}~Lt&tw_2uD$NxquA>#fSHJgtX=%S~6Q+pH==fKio&g-ZV>kAxH#d}}#Wey|nD z>X5z*By{4lQBafe`XeJu8`*Gt1Um0{TaDk#-cWTDxma1P@cGO4*9^W(j{W$`u5%`z zaEWK@+gD!d-OiMhv)x_~Fpa9|VcVl3$#amIAwnQksGvc0Y@m1)C?BFwWK-nV)%Kln zcozDON1`koHF#!e!99Y1>FYO4ivl*<6yky+*M_EAndqhTB4Ys(uW?k_0I@e=t3IPY z^o0-j+0h^0d*AY{?|U)dR+c{@7$qXlt1w&Tu5^Dc8V;9NjIMPO$K^=)xu3}3ZY0^V z>gyVt7CgF(XKfBqF=<+z6Ms1mN17p-Ix?tW?vfoI^La+JE?$hh69su8kya>mf z7?)K*B|l3~BTLK7;hS`IWKWDl=%8B&bF+6)F^j=iS1|LmT>%Jmkfdr2JsdW9bMPHL z42?)VuUuZf;vLN3_kp&wrxVfbFaN%?HmvFJo!Gb*jYP8LBkeJO>rHykKe(j2GxQOz z7prb%XLx-@k8Ajr5-TEB*@`UJ{Rel`c9I^wp#)(~JuP zM%umTj5*zsdTnccI$HSKLg&5n(7~MO3&!rxDO%ZhQ}xy0;IwE7SE`-@(A`w|y8y|)3Rx9fWJqN-->iv!chV~5|%SeVw|mX zI20d`pH9y8waz`U5Tu^` zv>&JHdk5JoMIBt57|mQ0UT{8#?wa+EjUa1l+X_{j{{FLo7XP{J5IeF>;Zv`b{_Kin zf~-@bT1eUssZX!ORcrH4a_rcCc@%M#iZV$aZ(AX^qD~FJhA)kqTh%kbzNFzK5$cB{ zX5hnqkuaGzZrGTD0?~_}Q;AIfCp$(}KsUG?^-Y&_xhgXefv4Y?%D?lx4(EZe|F?E0(+XfRBl)HK9apB9N?$u@YUM3bZPmZ7cgNWR8e;C)kVr&Nz{f_ge za2k!-Ud%FAZ?h_!1Iv=uS@&nj=+^QP-TFhv?S;gomJWsukkSGJ2`Eu4Dc-7^ z61T+tGWg&jV<_?(4=@>1``Slm4O0BhF&J@kG=olFgqDVl413(D@-6((Mxai(xkn24 zL3-4j9sIRWob6rQ$9LGE)_4MjzK(4T$6lmx`j5du6%T3$*t4Po>$yA``}-og5Ac}d zVcf}Nj37qApS8zQ@31BU7OcYGP!w=j;2a|ZQ`=_@y|mcy7B@o9Q>sC3@(;DnltHoP z5L?N-)$Pq%M~q$M9Gv=Tj-N~FJkf_04+o|=4agUa64X2{T3a6@xciFSwg(d&cF*j&b2EW3qrPN5amt!M-)H(c=o*|m z_Q2C^<#2O_D8qh=Kab`3(osLeZ57;Mm=gQrw92m+%qOv8c7=;-9N&075hELj8!CHt z2#sY2z)9A*mf^>_DOqFL;+a?KWOrSf4f*;1KxlxYmxfgn8o1H_szz_ zd?krt7Dw}evPe;tDWkt((WpBnhor<3ay{3%6ysXaJUcRD{p{Nr051shgOg~6}_1OkKo{r&#}002Pr@7w-6fdAd+&xY9d(abxNg_{%w zl=TiwcWd*~nMWMnue7Y#piT_K-h%0x$zL&%*=5xoE!cAYxLa0={UqpZsYwGLfQQ&u zS16_m}8dpEN8ygw-`v{eu z$0ygCR|6ulfeuf9{G8wX2h9q@=;?foF1s>YP+)hv_(y?`j*h_c_vktQc0K*h=Zg&G zXT!5lJKrb?k#k05lkGoN=6)T!;q74S@AHdK76U_TR(5urpY993?W+wWugmmD;K$_@ zgiS#0>S+s&mYdv!7uvSpSYq=IP-;k+-V7Z(ibS1}RWE7jeeyW;{njph(8j=U?8%JbdYTw5Cgg*rAiua?N1-Q(A3$D5gW9~BS7cKdHt5B3A`a+iLZ8l)p5 z&z0xHuF``g38l7*y1pOf1;6{X1llu&HzUDyzj^AKRv+yiUC$F( z@saJHR9-}2SFT^T0sEQ>a&4=aafSBO>)-{$8g~n-S`XDgGIq$ADl$t@$;(#-HkQ@I z+do<4XKg-aQ(0FeRI+Av`C)iB*WjB_}92?~3uH(Zzws8mTowlt=1PYaS=z4rQQq_D_}iLWy5 z+Kuwi14{nz&~r?uUiOlhJ2WI*{p=%HawZ>9cV4re7Z*nJZbct+Q)(3MUQM c`1_r{s#J-w_BxQe{o5%cp(tJ@Y7qE;0CwQKQUCw| literal 0 HcmV?d00001 diff --git a/public/images/2-git/2-git-branch/basic-branching-5.png b/public/images/2-git/2-git-branch/basic-branching-5.png new file mode 100644 index 0000000000000000000000000000000000000000..947133f77a8f43e4fdb17c74d73b55029db07cca GIT binary patch literal 8843 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

(Jz)qaYZQA{`P#Lm^bSgxp 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 literal 0 HcmV?d00001 From 76f29b2f9af230585a3375dc7e43b4bab1ef531e Mon Sep 17 00:00:00 2001 From: tomasdisk Date: Thu, 8 Jul 2021 03:07:50 -0300 Subject: [PATCH 3/5] clase 2 casi final --- .../academy/2-git/2-git-branch/readme.mdx | 313 +++++++++++++++--- .../2-git/2-git-branch/basic-branching-2.png | Bin 0 -> 14505 bytes .../2-git/2-git-branch/basic-branching-3.png | Bin 0 -> 13836 bytes .../2-git/2-git-branch/conflicts-solution.png | Bin 0 -> 14061 bytes .../images/2-git/2-git-branch/conflicts.png | Bin 0 -> 56006 bytes 5 files changed, 259 insertions(+), 54 deletions(-) create mode 100644 public/images/2-git/2-git-branch/basic-branching-2.png create mode 100644 public/images/2-git/2-git-branch/basic-branching-3.png create mode 100644 public/images/2-git/2-git-branch/conflicts-solution.png create mode 100644 public/images/2-git/2-git-branch/conflicts.png diff --git a/public/data/academy/2-git/2-git-branch/readme.mdx b/public/data/academy/2-git/2-git-branch/readme.mdx index c73e223..a41bea3 100644 --- a/public/data/academy/2-git/2-git-branch/readme.mdx +++ b/public/data/academy/2-git/2-git-branch/readme.mdx @@ -11,7 +11,7 @@ import { themes, Image } from 'mdx-deck' # Clase 2: `git branch` -### Tabla de contenido +### Tabla de contenidos 1. ¿Qué son las ramas? (Branches) @@ -19,26 +19,24 @@ import { themes, Image } from 'mdx-deck' 1. Merging -1. Merge con conflictos :scream +1. Merge con conflictos 😱 --- ## ¿Qué son las ramas? (Branches) -Nos permiten hacer cambios en el proyecto sin modificar los archivos existentes! +Nos permiten hacer cambios en el proyecto, sin modificar los archivos existentes! -Tambien facilita el trabajo en grupo, porque cada persona puede hacer su tarea en una rama separda. :twisted_rightwards_arrows: +Tambien facilitan el trabajo en grupo, cada persona puede hacer su tarea en una rama separda. 🔀 -Y cuando una tarea esta lista, esa rama se fuciona con la rama base o principal. - -La forma en que Git usa las ramas es una de las principales razones por lo que es tan popular. :star_struck: +Lo facil que es cambiar entre ramas, hace que git sea tan popular. 🤩 --- ### Punteros -Para git una rama es una etiqueta que apunta a un commit +Para git una rama es una etiqueta que "apunta" a un commit. -Por esto es super facil crear, mover y eliminar ramas en git, solo se actualiza el puntero! +Por esto es super facil crear, mover y eliminar ramas en git. Solo se actualiza el puntero! > ### HEAD -> #### Es un puntero especial, apunta al commit donde estamos. +> #### Es un puntero especial. Es donde estamos parados, la version del repositorio que estamos viendo! --- @@ -54,7 +52,7 @@ Por esto es super facil crear, mover y eliminar ramas en git, solo se actualiza `git branch` es el comando para gestionar las ramas de git. -Por defecto lista las ramas del repocitorio local +Por defecto lista las ramas del repositorio local: ``` * main @@ -67,15 +65,15 @@ y marca con `*` la rama en la que estamos ### Crear una rama -`git branch ` +`git branch ` -vamos a crear una rama llamada `testing` +Vamos a crear una rama llamada `testing`: ``` git branch testing ``` -y ahora `git branch` muestra lo siguiente +Ahora `git branch` muestra lo siguiente: ``` * main @@ -86,63 +84,77 @@ y ahora `git branch` muestra lo siguiente ### Cambiar de rama -`git checkout ` es para moverse de una rama a otra +`git checkout ` es para moverse de una rama a otra. -vamos a la rama recien creada `testing`. +Vamos a la rama recien creada `testing`: ``` $ git checkout testing Switched to branch 'testing' ``` -Mueve el puntero `HEAD` al mismo commit apuntado por la rama `testing`. +El puntero `HEAD` se movio commit apuntado por la rama `testing`. -`git branch` muestra lo siguiente: +Ahora `git branch` muestra lo siguiente: ``` main * testing ``` +Estamos en la rama `testing` 🧪 + --- ### Cambios en testing -Podemos modificar archivos y crear un nuevo _commit_ con los cambios. +Los nuevos _commits_ van a quedar en la rama `testing`. + +Modificamos algunos archivos para crear un nuevo _commit_: -Modificar => `git add .` => `git commit -m "test commit"` +1. Modificar +1. `git add .` +1. `git commit -m "test commit"` -Luego, nuestro repositorio quedo asi: +Nuestro repositorio quedo asi: -podemos ver algo similar con `git log --graph` +Podemos ver algo similar con `git log --graph`. --- -### Cambios en main +### Cambios en master -Hay que moverse a master... +Hay que moverse a master: ``` -$ git checkout main -Switched to branch 'main' -Your branch is up to date with 'origin/main'. +$ git checkout master +Switched to branch 'master' ``` -Modificar => `git add .` => `git commit -m "test commit"` +1. Modificar +1. `git add .` +1. `git commit -m "test commit"` -Podemos ver como quedo el repo con `git log --graph -all` +Podemos ver como quedo el repo con `git log --graph -all`. +Algo asi: +Las ramas devergieron, ya no compoarten la misma historia! + --- ## Merging +Las ramas pueden fusionarse para combinar su historia de _commits_. + +Cuando una tarea esta lista, esa rama se fuciona con la rama base o principal. + ### Basic merging Crear una nueva rama partiendo de `master` @@ -152,86 +164,279 @@ $ git checkout -b hotfix Switched to a new branch 'hotfix' ``` -`git checkout -b ` es un atajo para crear una rama y movernos a ella automaticamente +`git checkout -b ` es un atajo para crear una rama y movernos a ella automaticamente. -Agamos cambios y creemos un commit en `hotfix`. - -Modificar => `git add .` => `git commit -m "test commit"` +Hacemos cambios y creemos un commit en `hotfix`. +1. Modificar +1. `git add .` +1. `git commit -m "C3"` +Nos queda algo asi: + --- ### Fast foward -Para _mergear_ o fusionar los cambios de la rama `hotfix` en `master` hay que moverse a `master` con `git checkout main`. +Para _mergear_ o fusionar los cambios de la rama `hotfix` **en** `master` hay que moverse a `master` con `git checkout master`. -Luego hacemos el merge con ` git merge ` +Luego usamos `git merge ` para actualizar la rama en la que estamos con los cambios de ``. +Mergeamos `hotfix` en `mastar`: ``` $ git merge hotfix -Updating 4c0d929..83bb222 +Updating 5309e6d..76fa2dc Fast-forward - text2.txt | 1 + + README.md | 1 + 1 file changed, 1 insertion(+) - create mode 100644 text2.txt + create mode 100644 README.md ``` -> #### Fast-forward: significa que `master` esta en la historia de `hotfix` y solo fue necesario adelantar el puntero de `master` a su nueva poscicion +**Fast-forward:** significa que `master` esta en la historia de `hotfix` y solo fue necesario adelantar el puntero de `master` a su nueva poscicion. + --- ### Merge commit -Es un _commit_ especial que tiene 2 ancestros en vez de 1 +Un _merge commit_, es un _commit_ especial que tiene 2 ancestros en vez de 1. -y se crea cuando se fusionan 2 ramas que divergieron. +Se crea cuando se fusionan 2 ramas que divergieron. +Para lograr una historia parecida a la de la imagen, hacemos los siguientes pasos: +1. Crear rama `iss53` con `git branch iss53` +1. Moverse a esa rama con `git checkout iss53` +1. Crear un archivo, por ejemplo `LICENCE` +1. Prepararlo y crear un commit: `git add LICENCE && git commit -m "C4"` +1. Vamos a `master` con `git checkout mastar` +1. Hacemos cambios y creamos un commit `git add . && git commit -m "C5"` + +Por ultimo, hacemos el _merge commit_ pasandole un mensaje con `-m`: +``` +$ git merge iss53 -m "C6" +Merge made by the 'recursive' strategy. + LICENCE | 1 + + 1 file changed, 1 insertion(+) + create mode 100644 LICENCE +``` + +`git log --graph` nos muestra la historia, senalando en el grafico cada _commit_ con un `*`: + +``` +* commit 2252345f8e40c3a67df81395746acfeb9daee22b (HEAD -> master) +|\ Merge: b3b435f 9ac1dbf +| | Author: tomasdisk +| | Date: Thu Jul 8 01:34:35 2021 -0300 +| | +| | C6 +| | +| * commit 9ac1dbfad0bd809d52834dcb8178ed167dd7e2d6 (iss53) +| | Author: tomasdisk +| | Date: Thu Jul 8 01:32:08 2021 -0300 +| | +| | C4 +| | +* | commit b3b435f70e84cf459128028a277d5e852029a1e0 +|/ Author: tomasdisk +| Date: Thu Jul 8 01:33:13 2021 -0300 +| +| C5 +| +* commit 76fa2dcd740e1667d507476d2addd42e76b328bc (hotfix) +| Author: tomasdisk +| Date: Thu Jul 8 01:06:11 2021 -0300 +| +| C3 +``` + + --- -## Merge conflictos :scream: +## Merge conflicts 😱 Cuendo queremos fusionar 2 ramas que hicieron cambios en un mismo archivo puede haber conflictos. Estos suceden porque git no saba como mesclar el contenido de los dos archivos. -Queda en nosotros solucionar los cambios y terminar el merge. +Queda en nosotros solucionar los conflictos y terminar el merge. --- ### Conflictos -Para recrear esta situacion vamos crear una rama `nueva`, modificar `README.md` y crear un commit. +Para recrear esta situacion, supongamos que en la rama `master` tambien habiamos creado un archivo `LICENCE`. + +Al querer hacer `git merge iss53 -m "C6"` el merge falla, porque las 2 ramas tienen cambios en el mismo archivo: +``` +$ git merge iss53 -m "C6" +CONFLICT (add/add): Merge conflict in LICENCE +Auto-merging LICENCE +Automatic merge failed; fix conflicts and then commit the result. +``` + +Nos dice que hubo un **conflicto** de merge en el archivo `LICENCE`. -Luego, volvemos `master`, vamos a editar otra vez `README.md` y crear un commit. +--- -Y por ultimo, queremos _mergear_ la rama `nueva` en master usando: +### Solucionar conflictos +Con `git status` podemos ver como esta el repositorio: ``` -$ git merge nueva -Auto-merging README.md -CONFLICT (content): Merge conflict in README.md -Automatic merge failed; fix conflicts and then commit the result. +$ git status +On branch master +You have unmerged paths. + (fix conflicts and run "git commit") + (use "git merge --abort" to abort the merge) + +Unmerged paths: + (use "git add ..." to mark resolution) + both added: LICENCE + +no changes added to commit (use "git add" and/or "git commit -a") +``` + +Dice que hay _paths sin mergear_. + +Si abrimos el archivo `LICENCE` vamos a ver algo asi: + ``` +<<<<<<< HEAD +# Hola mi +======= +# Hola mi repoo +>>>>>>> iss53 -Nos dice que hubo un conflicto de merge en el archivo `README.md` +``` + +VS Code nos lo muestra asi: + + + +Hay 3 marcadores en el texto. Fueron agregados por git para delimitar el conflicto! + +* `<<<<<<< HEAD`: es donde arranca el conflicto +* `=======`: separa los cambios de la rama actual (`HEAD`) de lso cambios que viene de la rama que estmaos queriendo mergear (`iss53`) +* `>>>>>>> iss53`: en donde termina el conflicto + +#### Nuestra tarea es: + +1. Edidar el archivo `LICENCE` y decidir con que cambios quedarse. Las opciones son: + * Nos quedamos con los cambios de `HEAD` + * Nos quedamos con los cambios que vienen desde la rama `iss53` + * Elegimos algo de ambas ramas +1. Eliminar los marcadores para que git sepa que no hay mas conflicto +1. Prepear el archivo +1. Hacer el commit --- -## Pull Request (PR) +Editamos `LICENCE` y borramos los marcadores: + + +Preparamos los archivos con `git add LICENCE`. + +Luego vemos como esta el repo: + +``` +$ git status +On branch master +All conflicts fixed but you are still merging. + (use "git commit" to conclude merge) + +Changes to be committed: + modified: LICENCE +``` + +Git ya sabe que todos los conflictos fueron solucionados, pero nos dice que el merge todavia esta activo. + +Para terminar el merge hay que hacer el commit usando: + +``` +git commit -m "C6" +``` + +De esta forma se creo el _merge commit_ con los conflictos solucionados! 🎉 + +--- + +### Ejercicios + +#### 1. Primeras ramas + +- Crear varias ramas +- Moverse de una a otra +- Crear commits en distintas ramas +- Ver el grafico de commits con `git log` + +#### 2. Merge + +- Fusionar distintas ramas en `master` +- Crear un conflicto y solucioanrlo! + +--- + +### Resumen + +Todos los comandos usados en la clase ✨ + +Listar ramas +``` +git branch +``` + +Crear rama +``` +git branch +``` + +Moverse a otra rama +``` +git checkout +``` + +Crear una rama y moverse a ella +``` +git checkout -b +``` + +Merge: combinar la historia de `` con la rama actual dandole un mensaje para el commit +``` +git merge -m "mensaje del merge commit" +``` + +Ver la historia del repositorio como un grafico +``` +git log --graph +``` + + + +--- + +### Bibliografía + +### 1. [Pro Git, Capitulo 3: Ramificaciones en Git](https://git-scm.com/book/es/v2/Ramificaciones-en-Git-%C2%BFQu%C3%A9-es-una-rama%3F) +

diff --git a/public/images/2-git/2-git-branch/basic-branching-2.png b/public/images/2-git/2-git-branch/basic-branching-2.png new file mode 100644 index 0000000000000000000000000000000000000000..a04469c41540b379af1df9f38233f2efa1753c56 GIT binary patch literal 14505 zcmeIZbyQqU_AU$rf`kMTAP_7af_vlc?(WvzG*0900fGh%P9Qi03+|HO9^Bo6yW8y~ z@65dO{qFb2taa~Scg{NWs@n3@-cRj1b^4qpL`gyNDFz`10s_KQX(=%k1cXNb1O!AM zv`28s`z?KC1O)6`cQq|X6_5+S*51a%+zJYCbhCv5pswa72nen-#YvX&bTrQb9x6h$ zk(l0SJp*u=Iy3jBE1GLMsn0i$p3q)6)sH5TOJxLOKihom)3R)HJ09bZpV{>!EphHIXuXtxw3SrA2G8 zh2V_e{~q%BmIpUI+Nb(LXq8{7r<7^L!}m%@!zycMlA`E@r}@Aq(9h@FqQ!&2p5eV= zNE-Ukn=g6UFWiQ5nkkiT4Kbj{!s!=-fpS+@scuZ`kOJhjp%vVge%jmq-p#z%+QV0` zvTUSj_MF6*+AoZ%hgQ?m6pvSLJz5U~F8gBp?gQFtPUL>x>kW3bcoYYD3|Tr=aEQz- zgk5W`oP<2Vf5S9n{UPC4@v>;h@^ITv(pm*(*VSQ}7tLZ`S3oJtI`5das*pl6;aP6q z?-olfI2pDP?GoZgukMqRQWXx)i7k_Ne`0#FsW);mcf<$F8}w(egDPOg*S^n=raGUVvJN&1?ZxYs&N-i*^X}jF>tK{t-XC9I zRKyFE$EV9(1zsny!_@Bx$hbcRZ-$4jCwJGnKSppoPwhyv82F~T$sP8VHx_C_lSV9? z24vAv?6n^?-M{ait7#0>dB|&AkL*WLoPT)h@J;n1rT;FuMzAND8|6Ujd+Zw~Q7jAk z$)UkHQv=qt+iR)$`*q+gU)hRT=zA_yGBbI}=iIWCeCWakd){oaXc>idnlzCKMq0^w2>pV!j=O)16xspX{K| z8mgX-U`a+ex+dGB41?FbcKFJMbc^tQCMKGgcMPI2-z%v!QY9=@>}TOg_Dz4CO?8*L ze0`!*5us9rK4b*`>Jqf}O+l+Z=?CeKdv=|&pX_XqRmP2U|B7^2`y0wuG_LRkp>@7^ zw|(=R8d}jdj+E(=D>*)>yyh!%+nh$8!U~RrD)qY?))R*@i{j+LkyuHOH&m?D!x3f= zxv9=9TfA7@vs%4zXqYEt4q1!}j}p9Ry(!<(D=T$Aaeo4eg3b-TL* z?P2=v!NfV9#_DK?yOy69yC3*R_H)b(@hmQrP7e}(4rRq1wpR=17K>CDFUD%mwR$(y zJ}(Ve%5lzrx-k#X?JXAxCt}RtNj64`IA0A@KssRl1Y_3O*Vn>%v4yNLQ}#66N;`?% zIbjPqw597TV%Hmcjz_BP`*9KE8EF2iAy18tj(bX$OXRFX1ZLtI64Iybua--hRgJ~Q zuRkQ$AgmofCpf?Kdafe{73EbZ34gpJC)6fdT!l`{*x79f%Nh2&He%;+0xHFd2@%Fg z3)xyE8zDl!HdVFScX0E%qYN}j z>03v#ny13@(Fb*~qwO&U7LdyDBS%=;8)cGFotHnMPEB+}F8xMA!LkNGOEgk99eUH? zH1?G}s7HrT&FVIK9<|E>@5VyF4``oOJ0T`eww%#yt;Xovl)TAnER+{tV>7~^H=g*O zMF3;6EJ@oj>` zEX`OVXC~nr(Qr>_0W;GaP@3H45hFnKlsc`R7sgr3O>YRr23_>c^K7TD^9OTwX zQT|}oWd5)$tG-84NXcpA-gozBd(J#L95L^M@Pt*y_Tovf0zrL(=%L@K_JpNz?Hj*n-+_uW=C_ zsc;zR9qP5Z_K;DJWk4O)WgebE)^!b$PNV;3Hc)p_^@}_?XhmschGM{Nf>6%Co+F!q zBNEeB;-1m|W2hT*UmGpB1wlmfU8>^=0M=oTZ`lP{!q&;FcCHvg~KN zBn+66Ac2v78Bal*dMV$%8g=f*&tAycPr4-@L9tg($uH^u-AL$Gjf+irsb%}iTQUw@ z2%-m4P8#bAdg~K#1GQAX$*OB3Oe#SZvo9d{h&Z#KI$Fr{=?d-Ovx58zRk2hElZ&D+ zDvHFWs$Z9Vthz6e!Enaz^f)((GjrwPLd9#oL0pSQW85a!}qKPUtN2%@LVNuOx1l(qdfD zWd4->QnMpn8;;U1`5tTdgG_BPzdBZC6j;9!#TtSEGAG75i>cpR+SS!_=7?$P5a(ZR z&jV0?TzwZiqq8kq5(o?poOnU6Y0pQKbt8euiiEu1Ns4RRZ>>#{gL=;0WeqO8Ln?a) zT^fO)3@EXP&6T!Ut~^tYR#_GPJV}O!Cfstggin1j4Z^6J-lMfw(APkVe`w#jE!iTD zHWBp7=Xf$Fw1`v~Yte@MQSP%e@gokp%Q}?G$U^RY7LpqJ_@*$jb>l|YPE>MYDSP9+ zaeZ1Kxer440;HsYQ%cMsgu1NN*TnPNx0GH{E9U0nQFQ*7W-C+G%d8pu@~37bj1osu zoj+=jZi`jpx1YH^zeOu)t>t|32(+j_=iv%MK@}L2)z>S-f|vLsMCS%GPwr@ix1ss$ zvi7nLE3t+@rx#9%cU@PWmU4Q|25ba&zK?&6lxF-9NgwO96~V{=tBStpM)e^IlEYbO zKL3?AX6ahtl{(*=00Cv>rQHiZ1eyb{9+R~ReSYy~%Zm#=)uRHi~WPhM4cb16_4Ni4LlHCwJjiu;oaRo10gG;X_{#H}-( zx0?u+TkXaE51RL;!f`}|?cKcA;Rzx9peo^6HILBHoOk>!G=GqF%N zH$1I}^_hv2p4l3vG(*w9V?V6&3fL*3qkSPFml|{#Qj)pEwwHfPRr{g3RJD<Ebq4oHswKgco=W4x zyZRJ2Ma#h{^eJeY;7C!IDb zi+Pe@q*ZdnOrlHudfql%EH@E7M?WIsmX*d#By1vAN|tnIdMpDjmA z&!|v_r9Bblg}j^W@`fRGxJUx8F&x`wGeKX!eTLcUX9dMizwxb&-qmHf58oAd3d#i2 z+Ifonyc6%JS#f>ANjLbsGe?0S3KsW_Q? z0_YJB2j-)~tyj~mF?#y9_#5-A7@10k>{~ZXUS*&v{H8$CfcGM{I07Fx%9SHljpUhb z4~p@R0NRRsHbEo;vEUBdkx-tLLoTznI}EQVzsiNUz9;(#Z$(ZJJ_whNiC^fAjEPR3 z3K#|JVW6W+*n*Z(Z?faZ59C-8Sh+PfPc1X`-(sO-GlgE3guLh1$l1>@uE$~vmN3z@ z`I$`pLe|DAF^Bh!n8tn+K@U<<-cz;Cw`$!o5I}d@h>e6xBF{Wd@4`=?`UFTgb!2oQ4-AF zZc4YikhwT1MNeU81%Zp@#;*`og`YeVy&n8Die?lj>}e9{gogW`LuHVeN1rGR!2*h# zIaa2wy&*7Ro(FyTFkbc;*N?=iUt_1HB^h& zhaW+SKi%*0-rvm-q%%BR5IL1XF7Hs5EZFI}Uu+A4+WmQ#$;$(zo~XZD&aECYj??j9 zf?-YQ;YQ&VNu4ad18r6yzbc9Htg`H9VyG16e?6MCts!vr0@ z%_;t7P`27U(bH@un3m8CPe*v|@XxUL;O0e!xD@&1nAuDlTRdOYuOh1Tv*2{m(tDgO zh4BkjqCJ{{#yLTa4<&fC=X~;LxH1iLk|>+Sla$|&_#a_sETL2cjqtFm?V>L5!P*Ip zURuq1)y?1!-7GkSC=N^CMn*0(G2x;fx)q(x?LR?##%$}eBACTSkk(x+v>M1stC9(% zlQO+xitB=jOpuzGpydGjE?OJ&Ogzz+uoq(ymBsSiJxDxRvE?Up8);4rOK11O6i!B( z2btbp=dzGs@BlIKSTxUW`kzlE5V85BAS7r`Z(hEyuz8DV=x^gUvIAk1v_PF;%E^AZ zr}CM_cAl+o`8eQEu~p>WR=Wv>5&nFH&>a38L`zWWRBF;O$>xCNjWp6GuyaGA(%}fT)c<6u`#F#>mVd?rQGL zLMDI#;IlV2;ZYHj_zMEw<0mt7bhPDRVsdeDVRT_-w6Qm30&;V6GcmI;v9K_}Ef^f! zV2&VH2AIR!Ul4yV#GnokdvjYya~l}o7bXa7j|T z$rWVF1Y~4pvbJXWyN83LxHBB&uYmry9u8{o$4N{oPzM_)dk9qA847cJ`*#Rq$UpsU zo$RfCr(+CZf?7eX;ieAoQGx$9q@=XG(my?ZQDACrZTs5`PWHc9I+~mOi>!Z(?U&|v zI)4uY?*32Qf3yBa?!S%UR`T*ZVm1(`U*SoM@ss@;pU2n+Vs6ayyUAt3&BD!U%*DWF z3}RzogP3qIa6=#_3_vaxV<0D(lZBZb`Zp+Pn1dq-27&&9f`c=f!*Rf@CTyI>EG7(K zFgp+q0R=H|gTbr}EXJHHoSaYy3oA3*-yjt2&EZuEvif^ezo3laP(WsOFf$tmlz|-x zg)*>#KwJ!5Ab4CHKw~f`GZ<*X#li9$${4~UVPkI%f={QpHOLgoWD7I>t@uSakFb(7 zKN$-n^S>lYRvZHdg#(zd{21^88)i z0KPwyB4zFXw{ZJa@qg942*~tL@6QsjGXJdt0DhM(4+!#S5C@Pm)cE&6aKAq)h#3fG z3WcxlzY6Lfa`XSqWWi_Hn2Q|(=amHvpKoRs5CfQ#gM|Ua4CVxLgCHOX_)p^hM0c<; zadZLMLxoM@nZmPy7trr)0Mx&!r1|$)T+E=qcw%M&GB9&8FmtIf19_NPcv#_WRvu<% zGN!*0X8N_N|B*2t)BoUv@3+CNvn$R8&b?RP-NjixCj0qrIZ}rP`Em0~JSQLe+?O0V`1%JlfcJc4M@-86x?3I!?@P zTdrBw8YQ6}H{3x=tq;+yJ|=%EN7qP7nVNDqt4G?vm-1|NN2^-6UaT5h^Q$WR8= zlMtdhwv~B-ToI`4|T$r2LVt#z{r!!DgUyIwzldPp@UZt0A%5`ghajKu01vq2L7d@Kj`HsAFf!Qp zL$J@80u{Uw8SDo?Pvoi2WGUdEr*c#$@Kc@=4h8T2L4$wp?5szI{IWbe+&Da3-rk;t zBZLRRaeO0#{NToaPIx@~`C47`VQWR4f2MY{dV+AijT?( zajY-TE-A>EniwoA&OK6~JW-(hW~n;zqi1xa2TsT@_I_ne38%EXqp7Sc7cLA7@PNa@ zCGf}(kA9xYQJl$=!(mTl$&Zh>&g3YL6{rss=?)IJcGZ{_r9`Df1k@Fz&g5tfH57OD z_I7txPcP2*kB*L27@>yRKetwvmS+~`=1-M5*4G!e^tk3`$JRiCJL@x3u|7Yyw^wX6 zPPBMdOr<{r`yK7CE)Mm~q(yA3Z!V9uSehDdxI^Tm71nGN)+W0b0vs3PL$_?e-JPx0 zAdTha)v@sr2S>++*4p_*-`>H2nVRy+P`kN~{vAD)J&@Q`R{GNDYp*qDxG#+Kx#uNKuTSje~5 zmul-66@4wQ%Lxy4hJ3B5-$~0!iwTGgbj~UII+IbhYbKxjIq_q-uTltwFZ?kLqN9p} zDuU3)6#SPf2#8==Nil?A6cQQCeOcbsZHA8HvLG zxYq>%0nb=kOjylzW^dkHPVM5p%Z|_irxZ&{4g$X2eDIZ(PJcmeLCwbk^h1>o2w>~X z4VgF}zT0f!BS;0=8YP0_$MjU*z320suH;Q{~v85u70g^S?|q~9vI7%uv&EA$UrW!$K- zF=>(y6zuHd8{SDA*YDsai}K~GTO?8J1LH}r@0o1Y0XI?(4ky}^eeW_h?BQVKc*N6M z%qU3Un|)!?;&uOrt;p@;(=yLFHzoC|5};^`j0GdU%@8~au~6$S|MwrN3$UXO=9~ThRA0==2$Hm&A699re0A4Bm@X*QW7QGMRQvwb*(R^2^;7n} z!*)KsObPVGjn;FYGc#WbCoKv~AOl1lVwp`23~-`XJtnKu&Wr23@Od3%tMkTgJu^h<2Z<`h>!3gF zrPbBd4Iw7I$zc=}g(tEyGO)23dMX1FElu_D#ada%Z@W$Sj0W^Q1ADV+uvChP?!Yf| z<-PB4hoa9z-VQX6YL7%4Qqbo2fAyL)P>Ess!cDKCQQd^~Ebh#5-9*sJW{QF3Z2Nlw z)l2wHbw0B1zW)h^b#)KUWhJpE5JkWW8mE-Yc<0MEHl4g8t7{Ahr{l^^R3SE7UtSXu z(M`@wG;a6LYSf)5#Z}u5Eu_rWov9r3yq7Lod4w1Bnap$MV65fh1=8{QIqYEK22KIk&(#>i#v+DqACCEyu7^ZPxk_)cA7KE zO%x1ZR(d4xYnq{ME?vvSS8GDv2PKsi{F>EyBs)F)I%x(c9_q4n12JiK_D(kMHTg+_w4_5`&VBgwJL0w(Naet?qK8Dl|GQexhZd>c#w!WYV zCr8J%gGDIa)T~|3gITF%LkgJaX?L>b&M`0B&UQ@$Qn^pUfKi?sXRbNoG+B(D9{F4A zpF&NRLD?we>xL-g6gLVzasH-U1F}L3Slt&TzE;FMO5=;OGwyXVjvlfDx%TQua?7C^S=Kx98r!S+Hb^5e~(p-^ZfIYr?-8KdCZ{bU@6sf#sbtx&_@i~&U z!PjhK*jyz;%|VE@h)}tqdNGrti!{(xNa6Jt{8?M;oGK3$)?jEp)rH9Za1{r<&frVC zbRxt!czzG>sB{-8jDh{E+g}}Ax{My&5d*GMRk4%6EH|G<*?NrC{liaPmxX@XgEu1b zK$!mEar?@%VENhXun-4T#r=59UugD^3#RmKcQ@OvW+9eVB z9m5Ss5$1D|^GH3RcODTqM|l@Q1&ANzFT82MQd6(322@w07RnO3>)o7K}8 z*GDb7Y>h}=eR`q+j2#Om9=Fek@(uT4UTKJyOrmlYn5lwnO1a6*4&IO4FZ4!BHdwJ2 z&tBhL6B73E%bv;OH#A6ADiKdl|CpTgacpqL>TL_t#bo!_QrI1fu#;cs0Ad-}?AY0nEwvW1!|U6mg>7|>6#|5+0xC9%M?nVC!U`L z>@8DV^{S67=I|Qt7+sVZSAE*G>5;yhj$Fy{{QvGyzqTa!%pm`@m;G~x`fE26Qy02V z@f9k2xRdgWWEF^ipm?A$?Dr|4-gt}G;VCxs9oZ079cVcGS;-R0jCVq_hYl~K|1Zd& zEz#E(0U7y!Zjpa8MnFVFL;G9*@5WIDMA)SK7)}DuO^QBv{o zk0Bec=bNjxBrQ&GYs5lo^10v!A(_8 zu6^V(UkDE;u9p0JgSQ6Z-arF{?8Qb0t>E@$qOGb>fF$F&4;NYHBUL%Ge!ho`ya40E zNz{0kwwrYHl;-w_5XI0ZXZNMkyLXXVv72<5(rRLfG`=F6H&svL-=mfjSQ-}zh9xEJ zu7a-4A)`2V+WjlFLe=3kJkrA>w4JzS6KE~$-*3PAYT|6x1ouC|as>{1hjnMJ`Qqc$ zi+!`B(vs&vlRcJw+a9#79Nr`77AZfGlgRZzUrFXfL#gL1+ya=%j;;M{j$BM~%N#;K zT$so#XjSw=^z4fSj6a>gWJErHTOr4Asv}d`EiZJql;DhYMTI0RiLs)yYTI=wm$_=Q z0xWt)-&rYUose8&35>P~3;9u%XtsC)8c9%Jheqc!e=1Z?jxzof7J{DU8I1C^bce2R z5EX`@>gq(Rb^w;c(A2i8$Ir5ji~H;WY#w;?^q#v_pj>ZWc|&49y{-bGWYw@CHAa-Pz`?<`wXs73)dfh zPt&vUTv4}P z<+^1x^ENulWvJClz&c)2@g!ch;i~hDxH!>NS3Y++uhb#+(G3!Z0*zwB)l#VrFv4#$ zceSR1I1^e9L;0deBZy}#cn_|i{Uz8 zABZ|>ysKKZ$kXoOs@m@8lyKm=&SvI+xN*8|Nu0B%21+g2hDigokN*!{$>>i$s>i{#ULB&*^dyLWlM8QlXnrzg}ITDU%4gn9~|ibH&^ z=)BORKI+XF@(#w;h5@y09Car99+NLOp{$12`RUwFv~;^ykMAygX}AX_8FH1#6qQk8 z)*E`WjP5Xr#wI@-$m6haHD~|uviv@wkd8wZr9G@-0zC#*;Bdqtb>*O?@bYpml~Pi( zU?>Q7?_9mf`V~ zvkvOVd~v@pwy!R<1}pQ9c5*6o^PFa}^={D21CKBrz{N|8{G|GWt64hYgBYLnU9km9T z0ApG9L|Eau$A%pg(XLpg*}YH`g$3Y`lTg3mUrM6SVp>)dxuel+x?$WDJwr0#!%vER zB0Su)TaFkqP65z&ae&43q8Oi=#4-t7jRpC(6VU;N7wL(a+V(~R9VmAm)E>9<-4?EH zYa}faoDY;wJ1lD7E8I(uECzhRkXi^!)fF$S^ew{Z#$+-4^2&RTj~NuA?)tDjq0X73 zQI8`~$YWYPndgQt`^iqL)ICJK(Q~3f6gFSV0MkdE={y_%hp9-;4QwVAk{RS1!< z-})4EWgh0jg!F<=z5mc@vzROnF-g!HXgU@yq(4^B!n>RrcXc_RYRa?@YkPI`W2~G> zVkpZMCyJoXkIU2%P@O)r+y5d}K{De2f3C=n&@sr+a`K0~^B!fzRL zya?Ul-&>*UX<*IXmzx+oncHDopLc!xa>oq{{Z-}$8kEuJ=;>%zD-}rwsA3jBs$Mtl zTUiWMRP!yE4m4u~&e z(ZEW(zrj^sGLC0KB_*a+uko_k!FkvRwd7uP=!}z-H>IR_?$#=jpu&KYojWy9USHR% zWCOmDmBeN*(3fRvv{0TDq^AZtO?toRGbjVOu$d1!(dyp1-z`hkfprXc%lGvg(i{pM zt*+=CUeb{%t$vj1#@K^(d>4)mZOmJN4py;*JW9CZK&}&j4)HqicP)269}R9=cghG8 z6B39z53G1Jktdf+nobffFVrHu}-Ig`S8#DN_e zu~lQLVF^1OEsB6UBb**o%#;(cO^erbLTr)k_QMTBlD+2z=&$Kx?t-Il9ptkGC%H8~ zOt)<=8pqwAPI{_$Bzn=AfQ7Qtg`>?>CWqwG8p=KKaJtP3$sfE_r8{XP?m;TbJer?b zUQ4*OCt%$ah`;BC6}~&LL}!&_$4DDWA(lgwW|r#dqK_2y~spu4{Ly^1!gCM*u#h>*>XCZ$2`sOSKC4{j$Ys={lI!RL?NptKC+-lNXj>)}FRX)mOV7eE z#(4o4VZ(5tM*6|{5AHXz>ecTS5}w3)@8v`oP8SNib~jW-lTFRsX(O*H#(q({Nh^D% z8Mea_L~UTW)zXU*cP$g@R`e| zH1y!h00KdL98&yfT%ttqiv$VEpc@C|Cr=b3w92WOJLq*@0Owme0wg3U+k+7P-#omJ bACxhIyHZ^+;s1eTs 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 M85QYDNu%%o3qIwr00000 literal 0 HcmV?d00001 diff --git a/public/images/2-git/2-git-branch/conflicts.png b/public/images/2-git/2-git-branch/conflicts.png new file mode 100644 index 0000000000000000000000000000000000000000..84b72d8ea2be9d93a5e8ae500d5b056556d51faf GIT binary patch literal 56006 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 H?47>>uzTeY literal 0 HcmV?d00001 From d38e99873c16483401ae3130a49f2a0b7473bd73 Mon Sep 17 00:00:00 2001 From: Tomas Discoli Date: Thu, 8 Jul 2021 11:17:29 -0300 Subject: [PATCH 4/5] git clase 2 final --- .../academy/2-git/2-git-branch/readme.mdx | 91 ++++++++++++------- public/data/academy/2-git/readme.mdx | 25 ++++- 2 files changed, 78 insertions(+), 38 deletions(-) diff --git a/public/data/academy/2-git/2-git-branch/readme.mdx b/public/data/academy/2-git/2-git-branch/readme.mdx index a41bea3..0a39a65 100644 --- a/public/data/academy/2-git/2-git-branch/readme.mdx +++ b/public/data/academy/2-git/2-git-branch/readme.mdx @@ -25,18 +25,18 @@ import { themes, Image } from 'mdx-deck' ## ¿Qué son las ramas? (Branches) -Nos permiten hacer cambios en el proyecto, sin modificar los archivos existentes! +¡Nos permiten hacer cambios en el proyecto, sin modificar los archivos existentes! -Tambien facilitan el trabajo en grupo, cada persona puede hacer su tarea en una rama separda. 🔀 +También facilitan el trabajo en grupo, cada persona puede hacer su tarea en una rama separada. 🔀 -Lo facil que es cambiar entre ramas, hace que git sea tan popular. 🤩 +Lo fácil que es cambiar entre ramas, hace que git sea tan popular. 🤩 --- ### Punteros Para git una rama es una etiqueta que "apunta" a un commit. -Por esto es super facil crear, mover y eliminar ramas en git. Solo se actualiza el puntero! +Por esto es super fácil crear, mover y eliminar ramas en git. Solo se actualiza el puntero! > ### HEAD -> #### Es un puntero especial. Es donde estamos parados, la version del repositorio que estamos viendo! +> #### Es un puntero especial. Es donde estamos parados, la versión del repositorio que estamos viendo! --- @@ -86,13 +86,13 @@ Ahora `git branch` muestra lo siguiente: `git checkout ` es para moverse de una rama a otra. -Vamos a la rama recien creada `testing`: +Vamos a la rama recién creada `testing`: ``` $ git checkout testing Switched to branch 'testing' ``` -El puntero `HEAD` se movio commit apuntado por la rama `testing`. +El puntero `HEAD` se movió commit apuntado por la rama `testing`. Ahora `git branch` muestra lo siguiente: @@ -115,7 +115,7 @@ Modificamos algunos archivos para crear un nuevo _commit_: 1. `git add .` 1. `git commit -m "test commit"` -Nuestro repositorio quedo asi: +Nuestro repositorio quedó así: -Las ramas devergieron, ya no compoarten la misma historia! +Las ramas divergieron, ya no comparten la misma historia! --- @@ -153,7 +153,7 @@ Las ramas devergieron, ya no compoarten la misma historia! Las ramas pueden fusionarse para combinar su historia de _commits_. -Cuando una tarea esta lista, esa rama se fuciona con la rama base o principal. +Cuando una tarea está lista, esa rama se fusiona con la rama base o principal. ### Basic merging @@ -164,7 +164,7 @@ $ git checkout -b hotfix Switched to a new branch 'hotfix' ``` -`git checkout -b ` es un atajo para crear una rama y movernos a ella automaticamente. +`git checkout -b ` es un atajo para crear una rama y movernos a ella automáticamente. Hacemos cambios y creemos un commit en `hotfix`. @@ -186,7 +186,7 @@ Para _mergear_ o fusionar los cambios de la rama `hotfix` **en** `master` hay qu Luego usamos `git merge ` para actualizar la rama en la que estamos con los cambios de ``. -Mergeamos `hotfix` en `mastar`: +Mergeamos `hotfix` en `master`: ``` $ git merge hotfix Updating 5309e6d..76fa2dc @@ -196,7 +196,7 @@ Fast-forward create mode 100644 README.md ``` -**Fast-forward:** significa que `master` esta en la historia de `hotfix` y solo fue necesario adelantar el puntero de `master` a su nueva poscicion. +**Fast-forward:** significa que `master` está en la historia de `hotfix` y solo fue necesario adelantar el puntero de `master` a su nueva posición. master) @@ -268,9 +268,9 @@ Merge made by the 'recursive' strategy. ## Merge conflicts 😱 -Cuendo queremos fusionar 2 ramas que hicieron cambios en un mismo archivo puede haber conflictos. +Cuando queremos fusionar 2 ramas que hicieron cambios en un mismo archivo puede haber conflictos. -Estos suceden porque git no saba como mesclar el contenido de los dos archivos. +Estos suceden porque git no sabe cómo mezclar el contenido de los dos archivos. Queda en nosotros solucionar los conflictos y terminar el merge. @@ -278,7 +278,7 @@ Queda en nosotros solucionar los conflictos y terminar el merge. ### Conflictos -Para recrear esta situacion, supongamos que en la rama `master` tambien habiamos creado un archivo `LICENCE`. +Para recrear esta situación, supongamos que en la rama `master` también habíamos creado un archivo `LICENCE`. Al querer hacer `git merge iss53 -m "C6"` el merge falla, porque las 2 ramas tienen cambios en el mismo archivo: ``` @@ -311,7 +311,7 @@ no changes added to commit (use "git add" and/or "git commit -a") Dice que hay _paths sin mergear_. -Si abrimos el archivo `LICENCE` vamos a ver algo asi: +Si abrimos el archivo `LICENCE` vamos a ver algo así: ``` <<<<<<< HEAD @@ -322,7 +322,7 @@ Si abrimos el archivo `LICENCE` vamos a ver algo asi: ``` -VS Code nos lo muestra asi: +VS Code nos lo muestra así: >>>>>> iss53`: en donde termina el conflicto #### Nuestra tarea es: -1. Edidar el archivo `LICENCE` y decidir con que cambios quedarse. Las opciones son: +1. Editar el archivo `LICENCE` y decidir con qué cambios quedarse. Las opciones son: * Nos quedamos con los cambios de `HEAD` * Nos quedamos con los cambios que vienen desde la rama `iss53` * Elegimos algo de ambas ramas -1. Eliminar los marcadores para que git sepa que no hay mas conflicto -1. Prepear el archivo +1. Eliminar los marcadores para que git sepa que no hay más conflicto +1. Preparar el archivo 1. Hacer el commit --- @@ -367,7 +367,7 @@ Changes to be committed: modified: LICENCE ``` -Git ya sabe que todos los conflictos fueron solucionados, pero nos dice que el merge todavia esta activo. +Git ya sabe que todos los conflictos fueron solucionados, pero nos dice que el merge todavía está activo. Para terminar el merge hay que hacer el commit usando: @@ -375,7 +375,28 @@ Para terminar el merge hay que hacer el commit usando: git commit -m "C6" ``` -De esta forma se creo el _merge commit_ con los conflictos solucionados! 🎉 +De esta forma se creó el _merge commit_ con los conflictos solucionados! 🎉 + +--- + +### Eliminar una rama + +Para borrar una rama usamos `git branch -d `. + +Si queremos borrar la rama `hotfix`: +``` +$ git branch -d hotfix +Deleted branch hotfix (was e6ca539). +``` + +Si la rama tiene commits sin mergear, la eliminación falla: +``` +$ git branch -d hotfix +error: The branch 'hotfix' is not fully merged. +If you are sure you want to delete it, run 'git branch -D hotfix'. +``` + +Git nos dice que la rama no está completamente mergeada y si queremos eliminarla de todos modos usemos el flag `-D` en vez de `-d`. --- @@ -386,12 +407,12 @@ De esta forma se creo el _merge commit_ con los conflictos solucionados! 🎉 - Crear varias ramas - Moverse de una a otra - Crear commits en distintas ramas -- Ver el grafico de commits con `git log` +- Ver el gráfico de commits con `git log` #### 2. Merge - Fusionar distintas ramas en `master` -- Crear un conflicto y solucioanrlo! +- Crear un conflicto y solucionarlo! --- @@ -419,16 +440,20 @@ Crear una rama y moverse a ella git checkout -b ``` -Merge: combinar la historia de `` con la rama actual dandole un mensaje para el commit +Merge: combinar la historia de `` con la rama actual dándole un mensaje para el commit ``` git merge -m "mensaje del merge commit" ``` -Ver la historia del repositorio como un grafico +Ver la historia del repositorio como un gráfico ``` git log --graph ``` +Eliminar una rama +``` +git branch -d +``` --- diff --git a/public/data/academy/2-git/readme.mdx b/public/data/academy/2-git/readme.mdx index f7513a4..afe9904 100644 --- a/public/data/academy/2-git/readme.mdx +++ b/public/data/academy/2-git/readme.mdx @@ -16,14 +16,29 @@ summary: 'Módulo de git, donde aprenderemos a usar git en la terminal para vers Hay que aprender a usar la aterradora consola. Veremos cómo publicar y guardar nuestros proyectos en la nube para accederlos y descargarlos donde queramos, que otros puedan verlos y por último poder ver y usar repositorios de otros. - -## Próximamente, domingo 27 de Junio + ## 2. `git branch` - -### Crearemos ramas y vamos a trabajar en distintas versiones o tareas del proyecto - + +### Crear y gestionar ramas, para luego fusionar sus cambios! + + Vamos a trabajar en distintas versiones o tareas del proyecto. + + Cada tarea puede tener su propia rama para mezclar, así podemos trabajar en varias cosas a la vez. + + Cuando una tarea está lista, su rama se puede fusionar con otra para juntar los cambios! + + +## Próximamente, jueves 8 de Julio +## 2. `git remote` + +### ¿Cómo trabajar con un repositorio remoto? + Esto nos permite trabajar en grupo en el mismo repositorio. Porque si programar solo está bueno, ¡programar en equipo está mejor! Aprenderemos a colaborar entre varias personas en un mismo repositorio y así sacarle el máximo potencial a Git. + +
+
+
From 7986efee2653df74057bd5382edaba7754667f83 Mon Sep 17 00:00:00 2001 From: Tomas Discoli Date: Thu, 8 Jul 2021 11:19:25 -0300 Subject: [PATCH 5/5] fix --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index f37e27a..7b66c01 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "lint": "yarn prettier && yarn eslint", "eslint": "eslint --fix 'src/**/*.{js,jsx}' --ext jsconfig.json", "prettier": "prettier --list-different '**/*.{js,jsx,md}'", - "dev": "next dev -p 8008", + "dev": "next dev", "build": "next build", "export": "EXPORT=true next build && EXPORT=true next export", "analyze": "ANALYZE=true next build",