P a i , G e e k , e n t u s i a s t a d o d e s i g n e u m n e r d
d o c o m p u t a d o . Ta l v e z u m a m i s t u r a d e
F u l l s t a c k d e v e l o p e r s c o m
D e s i g n e r .   O p e n S o u r c e L o v e r !
Heitor
Ramon
Git
C r i a d o e m 2 0 0 5 p o r L i n u s T r o v a l d s a p ó s u m p r o b l e m a e n t r e a L i n u x
F u n d a t i o n e a p r o d u t o r a d o B i t K e e p e r .
U t i l i z a n d o o w o r k f l o w p a r e c i d o c o m o B i t K e e p e r e l e f o i p e n s a d o p a r a
d i m i n u i r o s p r o b l e m a s c o m m e r g e , e r r o s e c ó d i g o c o r r o m p i d o s .
N a q u e l a n o i t e , M a r t y M c F l y f o i a j u d a r o D r .
E m m e t B r o w n c o m s u a e x p e r i ê n c i a d e v i a g e m
t e m p o r a l . P o r e m d e v i d o a o p l u t ô n i o
c o m p r a d o d e t e r r o r i s t a s , D r . B r o w n a c a b a
b a l e a d o n e s s a n o i t e .
Time Machine
Q u e r e n d o s a l v a r D r . B r o w n , M a r t y s o b e e m
s e u D e L o r e a n , a c e l e r a a 8 8 m P / h , p o r e m
e s q u e c e u d e m u d a r a d a t a e a c a b a i n d o a o
a n o d e 1 9 5 5 , o n d e n o s s a h i s t ó r i a c o m e ç a .
Back in Time
A n t e s d e i n i c i a r s u a s a v e n t u r a s p a r a v o l t a r
a o a n o d e 1 9 8 5 , M a r t y d e v e c r i a r u m s a v e
s t a t e c o m o o s d e v í d e o g a m e . E n t ã o e l e f a z
s e u p r i m e i r o C o m m i t .
E s t e C o m m i t é u m â n c o r a n o t e m p o ,
p e r m i t i n d o v o l t a r a o p a s s a d o a q u a l q u e r
m o m e n t o .
First Commit
git	commit	-m	“this	gotta	be	a	dream”
Q u e r e n d o v o l t a r a o s e u t e m p o , M a r t y c r i a
u m a n o v a l i n h a t e m p o r a l p a r a p o d e r t e n t a r
v o l t a r . P o r e m n e s t a l i n h a s u a m ã e s e
a p a i x o n a p o r e l e , e e l e p r e c i s a f a z e r c o m
q u e s e u s p a i s f i q u e m j u n t o s .
A Branch
git	checkout	-b	introduce_dad_to_mom
N e s t a l i n h a d o t e m p o e l e a c a b a d e s c o b r i n d o
q u e s e u p a i , G e o r g e , é u m f r a n g o t e . E q u e
B i f f f i c a p e g a n d o n o s e u p é . V i u q u e d e u
e r r a d o v o l t a n o t e m p o e t e n t a n o v a m e n t e .
Hey McFly!
git	checkout	master	
git	checkout	-b	make_dad_a_man
Te n t a n d o d e s c o b r i r u m p o u c o s o b r e s e u
p a s s a d o , M a r t y a c a b a p a r a n d o n o q u a r t o d e
s u a m ã e L o r r a i n e e t e m u m p l a n o d e t e n t a r
j u n t a r s e u s p a i s n a f e s t a d o c o l é g i o . P a r a
q u e i s t o a c o n t e ç a e l e j u n t a a s l i n h a s d o
t e m p o .
O Encontro
git	checkout	master	
git	merge	—no-ff	make_dad_a_man
A g o r a M a r t y p r e c i s a f a z e r c o m q u e s e u p a i
c r i e c o r a g e m d e c o n v i d a r s u a m ã e p a r a a
f e s t a n o c o l é g i o . E n t ã o e l e c r i a o u t r a l i n h a
n o t e m p o . E t e n t a c o n v e n c e r - l o a i s t o .
My name is Darth Vader
git	checkout	-b	darthvader
C o m s e u p a i c o n v e n c i d o d e l e v a r s u a m ã e
p a r a o b a i l e , M a r t y a g o r a c r i a u m s a v e s t a t e
n e s s a l i n h a t e m p o r a l
I will take Lorraine
git	commit	-m	“No,	I’m	your	father!”
C o m t u d o d a n d o c e r t o , M a r t y m a i s u m a v e z
a l i n h a s u a s c o n q u i s t a s à l i n h a t e m p o r a l
i n i c i a l .
Enchantment Under
The Sea
git	checkout	master	
git	merge	—no-ff	darthvader
M a r t y e s t á f e l i z , m a s s u a ú l t i m a j u n ç ã o
t e m p o r a l t e v e u m c o n f l i t o q u e f e z c o m q u e o
g u i t a r r i s t a d a b a n d a m a c h u c a s s e a m ã o . P a r a
p o d e r s o l u c i o n a r i s t o , M a r t y t e v e d e c o r r i g i r
o M e r g e e a l i n h a r o s p r o b l e m a s e t o c a r u m
p o u c o d e R o c k .
Johnny B. Goode
F e l i z c o m o r e s u l t a d o M a r t y f a z s e u ú l t i m o
c o m m i t c o m a s c o r r e ç õ e s e c o n s e g u e s e g u i r
p a r a v o l t a r a o f u t u r o .
Happy Ending
git	commit	-m	“The	End”
P a r a c o r r i g i r o p r o b l e m a n a l i n h a d o t e m p o
c o m s e u s f i l h o s , M a r t y a g o r a v o l t a a o p o n t o
i n i c i a l ,
BTTF Will Return…
git	checkout	master	
git	checkout	-b	bttf2
C o m t o d o c o n h e c i m e n t o d e s u a p r i m e i r a
a v e n t u r a t e m p o r a l , M a r t y i n i c i a f a z e n d o u m
c o m m i t e r e b a s e e m c i m a d e s u a ú l t i m a
a v e n t u r a p a r a i n i c i a r u m a n o v a .
BTTF Part 2…
git	commit	-m	“Hoverboards!!”	
git	rebase	master
=🚫
G i t H u b é u m a p l a t a f o r m a e m
M o d e l o c l o u d . O n d e s e r v e c o m o
S e r v i d o r p a r o s e u s r e p o s i t ó r i o s .
Cloud
G i t é u m g e r e n c i a m e n t o d e
R e p o s i t ó r i o l o c a l .
Local
C r i a d o p a r a p r o j e t o s d e g r a n d e
p o r t e e d e f l u x o d e d a d o s
e x t r e m o s c o m o o K e r n e l d o L i n u x ,
o g i t f o i p e n s a d o d e s d e s u a
c r i a ç ã o c o m e s s e s p i l a r e s e m
m e n t e .
Seus pilares de
criação V E L O C I D A D E D E S E N V O LV I M E N T O 

N Ã O L I N E A R
1 2
C A P A Z D E G R A N D E S 

P R O J E T O S E D A D O S
T O T A L M E N T E 

D I S T R I B U Í D O
3 4
Ƙ
A l i n h a d o t e m p o q u e g u a r d a t o d o s
o s a r q u i v o s , h i s t ó r i c o s , l o g s e
i n f o r m a ç õ e s s o b r e o p r o j e t o .
Repositório
O s a v e g a m e d o g i t . E l e é o s e u
p o n t o d e c o n t r o l e d e t r a b a l h o ,
o n d e v o c ê p o d e v o l t a r e r e v e r t e r
a j u s t e s e c ó d i g o s f e i t o s .
Commit
Commits
git	commit	-m	“No,	I’m	your	father!”
A l i n h a p a r a l e l a a o t e m p o o u
u n i v e r s o p a r a l e l o . A q u i t u d o q u e
v o c ê f i z e r n ã o v a i i n t e r f e r i r n a
l i n h a p r i n c i p a l .
Branch
Branchs
git	checkout	-b	introduce_dad_to_mom
S e u D e L o r e a n D M C 1 2 p e s s o a l .
C o m e l e v o c ê p o d e v o l t a r n o
t e m p o p a r a q u a l q u e r c o m m i t o u
b r a n c h e m q u a l q u e r l i n h a
t e m p o r a l .
Checkout
Points
Checkoutpoints
git	checkout	master
S u a u n i ã o d e l i n h a s t e m p o r a i s .
O n d e v o c ê f a z u m a c h a m a d a p a r a
e n v i a r o s a r q u i v o s p a r a a l i n h a
p r i n c i p a l .
Merge
Merge
git	merge	—no-ff	darthvader
Q u a n d o a l g o d a e r r a d o n a s u a
l i n h a d o t e m p o e p a r e c e q u e t e m
a l g u m a c o n f u s ã o , v o c ê d e v e
e s c o l h e r o q u e f i c a r o u s a i r .
Conflicts
Conflict
U m a m á q u i n a d e X e r o x t e m p o r a l
i m p l e m e n t a d a n o g i t .
C r i e o u t r a l i n h a d o t e m p o o u
u n i v e r s o c o m o u m a c ó p i a e x a t a d e
o u t r o .
Fork
git	fork
C o m o o f o r k , p o r e m v o c ê f a z a
c ó p i a d i r e t a m e n t e e m u m
r e p o s i t ó r i o v a z i o .
Clone
Clone
git	clone
E n v i a n d o s e u s c o m m i t s p a r a o u t r o
r e p o s i t ó r i o e x t e r n o . ( E x : s a l v a n d o
n o G i t H u b )
Push
git	push
Push
Local
Server
P e g u e u m a v e r s ã o d e u m a l i n h a
t e m p o r a l e x t e r n a e j u n t e à s u a
l i n h a c o r r e n t e .
Pull
git	clone
Pull
Local
Server
N ã o f i q u e c o m m e d o d o
t e r m i n a l …
Te m o s o p ç õ e s m e l h o r e s 😉
GitHub Desktop
h t t p : // d e s k t o p . g i t h u b . c o m
h t t p : // s o u r c e t r e e a p p . c o m
h t t p s : // w w w . g i t k r a k e n . c o m /
h t t p s : // w w w . g i t - t o w e r . c o m /
=❤
github.com/bloodf linkedin.com/in/heitorramon

Back to the GitRepo

  • 2.
    P a i, G e e k , e n t u s i a s t a d o d e s i g n e u m n e r d d o c o m p u t a d o . Ta l v e z u m a m i s t u r a d e F u l l s t a c k d e v e l o p e r s c o m D e s i g n e r .   O p e n S o u r c e L o v e r ! Heitor Ramon
  • 3.
    Git C r ia d o e m 2 0 0 5 p o r L i n u s T r o v a l d s a p ó s u m p r o b l e m a e n t r e a L i n u x F u n d a t i o n e a p r o d u t o r a d o B i t K e e p e r . U t i l i z a n d o o w o r k f l o w p a r e c i d o c o m o B i t K e e p e r e l e f o i p e n s a d o p a r a d i m i n u i r o s p r o b l e m a s c o m m e r g e , e r r o s e c ó d i g o c o r r o m p i d o s .
  • 4.
    N a qu e l a n o i t e , M a r t y M c F l y f o i a j u d a r o D r . E m m e t B r o w n c o m s u a e x p e r i ê n c i a d e v i a g e m t e m p o r a l . P o r e m d e v i d o a o p l u t ô n i o c o m p r a d o d e t e r r o r i s t a s , D r . B r o w n a c a b a b a l e a d o n e s s a n o i t e . Time Machine
  • 5.
    Q u er e n d o s a l v a r D r . B r o w n , M a r t y s o b e e m s e u D e L o r e a n , a c e l e r a a 8 8 m P / h , p o r e m e s q u e c e u d e m u d a r a d a t a e a c a b a i n d o a o a n o d e 1 9 5 5 , o n d e n o s s a h i s t ó r i a c o m e ç a . Back in Time
  • 6.
    A n te s d e i n i c i a r s u a s a v e n t u r a s p a r a v o l t a r a o a n o d e 1 9 8 5 , M a r t y d e v e c r i a r u m s a v e s t a t e c o m o o s d e v í d e o g a m e . E n t ã o e l e f a z s e u p r i m e i r o C o m m i t . E s t e C o m m i t é u m â n c o r a n o t e m p o , p e r m i t i n d o v o l t a r a o p a s s a d o a q u a l q u e r m o m e n t o . First Commit git commit -m “this gotta be a dream”
  • 7.
    Q u er e n d o v o l t a r a o s e u t e m p o , M a r t y c r i a u m a n o v a l i n h a t e m p o r a l p a r a p o d e r t e n t a r v o l t a r . P o r e m n e s t a l i n h a s u a m ã e s e a p a i x o n a p o r e l e , e e l e p r e c i s a f a z e r c o m q u e s e u s p a i s f i q u e m j u n t o s . A Branch git checkout -b introduce_dad_to_mom
  • 8.
    N e st a l i n h a d o t e m p o e l e a c a b a d e s c o b r i n d o q u e s e u p a i , G e o r g e , é u m f r a n g o t e . E q u e B i f f f i c a p e g a n d o n o s e u p é . V i u q u e d e u e r r a d o v o l t a n o t e m p o e t e n t a n o v a m e n t e . Hey McFly! git checkout master git checkout -b make_dad_a_man
  • 9.
    Te n ta n d o d e s c o b r i r u m p o u c o s o b r e s e u p a s s a d o , M a r t y a c a b a p a r a n d o n o q u a r t o d e s u a m ã e L o r r a i n e e t e m u m p l a n o d e t e n t a r j u n t a r s e u s p a i s n a f e s t a d o c o l é g i o . P a r a q u e i s t o a c o n t e ç a e l e j u n t a a s l i n h a s d o t e m p o . O Encontro git checkout master git merge —no-ff make_dad_a_man
  • 10.
    A g or a M a r t y p r e c i s a f a z e r c o m q u e s e u p a i c r i e c o r a g e m d e c o n v i d a r s u a m ã e p a r a a f e s t a n o c o l é g i o . E n t ã o e l e c r i a o u t r a l i n h a n o t e m p o . E t e n t a c o n v e n c e r - l o a i s t o . My name is Darth Vader git checkout -b darthvader
  • 11.
    C o ms e u p a i c o n v e n c i d o d e l e v a r s u a m ã e p a r a o b a i l e , M a r t y a g o r a c r i a u m s a v e s t a t e n e s s a l i n h a t e m p o r a l I will take Lorraine git commit -m “No, I’m your father!”
  • 12.
    C o mt u d o d a n d o c e r t o , M a r t y m a i s u m a v e z a l i n h a s u a s c o n q u i s t a s à l i n h a t e m p o r a l i n i c i a l . Enchantment Under The Sea git checkout master git merge —no-ff darthvader
  • 13.
    M a rt y e s t á f e l i z , m a s s u a ú l t i m a j u n ç ã o t e m p o r a l t e v e u m c o n f l i t o q u e f e z c o m q u e o g u i t a r r i s t a d a b a n d a m a c h u c a s s e a m ã o . P a r a p o d e r s o l u c i o n a r i s t o , M a r t y t e v e d e c o r r i g i r o M e r g e e a l i n h a r o s p r o b l e m a s e t o c a r u m p o u c o d e R o c k . Johnny B. Goode
  • 14.
    F e li z c o m o r e s u l t a d o M a r t y f a z s e u ú l t i m o c o m m i t c o m a s c o r r e ç õ e s e c o n s e g u e s e g u i r p a r a v o l t a r a o f u t u r o . Happy Ending git commit -m “The End”
  • 15.
    P a ra c o r r i g i r o p r o b l e m a n a l i n h a d o t e m p o c o m s e u s f i l h o s , M a r t y a g o r a v o l t a a o p o n t o i n i c i a l , BTTF Will Return… git checkout master git checkout -b bttf2
  • 16.
    C o mt o d o c o n h e c i m e n t o d e s u a p r i m e i r a a v e n t u r a t e m p o r a l , M a r t y i n i c i a f a z e n d o u m c o m m i t e r e b a s e e m c i m a d e s u a ú l t i m a a v e n t u r a p a r a i n i c i a r u m a n o v a . BTTF Part 2… git commit -m “Hoverboards!!” git rebase master
  • 18.
    =🚫 G i tH u b é u m a p l a t a f o r m a e m M o d e l o c l o u d . O n d e s e r v e c o m o S e r v i d o r p a r o s e u s r e p o s i t ó r i o s . Cloud G i t é u m g e r e n c i a m e n t o d e R e p o s i t ó r i o l o c a l . Local
  • 19.
    C r ia d o p a r a p r o j e t o s d e g r a n d e p o r t e e d e f l u x o d e d a d o s e x t r e m o s c o m o o K e r n e l d o L i n u x , o g i t f o i p e n s a d o d e s d e s u a c r i a ç ã o c o m e s s e s p i l a r e s e m m e n t e . Seus pilares de criação V E L O C I D A D E D E S E N V O LV I M E N T O 
 N Ã O L I N E A R 1 2 C A P A Z D E G R A N D E S 
 P R O J E T O S E D A D O S T O T A L M E N T E 
 D I S T R I B U Í D O 3 4 Ƙ
  • 20.
    A l in h a d o t e m p o q u e g u a r d a t o d o s o s a r q u i v o s , h i s t ó r i c o s , l o g s e i n f o r m a ç õ e s s o b r e o p r o j e t o . Repositório
  • 21.
    O s av e g a m e d o g i t . E l e é o s e u p o n t o d e c o n t r o l e d e t r a b a l h o , o n d e v o c ê p o d e v o l t a r e r e v e r t e r a j u s t e s e c ó d i g o s f e i t o s . Commit Commits git commit -m “No, I’m your father!”
  • 22.
    A l in h a p a r a l e l a a o t e m p o o u u n i v e r s o p a r a l e l o . A q u i t u d o q u e v o c ê f i z e r n ã o v a i i n t e r f e r i r n a l i n h a p r i n c i p a l . Branch Branchs git checkout -b introduce_dad_to_mom
  • 23.
    S e uD e L o r e a n D M C 1 2 p e s s o a l . C o m e l e v o c ê p o d e v o l t a r n o t e m p o p a r a q u a l q u e r c o m m i t o u b r a n c h e m q u a l q u e r l i n h a t e m p o r a l . Checkout Points Checkoutpoints git checkout master
  • 24.
    S u au n i ã o d e l i n h a s t e m p o r a i s . O n d e v o c ê f a z u m a c h a m a d a p a r a e n v i a r o s a r q u i v o s p a r a a l i n h a p r i n c i p a l . Merge Merge git merge —no-ff darthvader
  • 25.
    Q u an d o a l g o d a e r r a d o n a s u a l i n h a d o t e m p o e p a r e c e q u e t e m a l g u m a c o n f u s ã o , v o c ê d e v e e s c o l h e r o q u e f i c a r o u s a i r . Conflicts Conflict
  • 26.
    U m am á q u i n a d e X e r o x t e m p o r a l i m p l e m e n t a d a n o g i t . C r i e o u t r a l i n h a d o t e m p o o u u n i v e r s o c o m o u m a c ó p i a e x a t a d e o u t r o . Fork git fork
  • 27.
    C o mo o f o r k , p o r e m v o c ê f a z a c ó p i a d i r e t a m e n t e e m u m r e p o s i t ó r i o v a z i o . Clone Clone git clone
  • 28.
    E n vi a n d o s e u s c o m m i t s p a r a o u t r o r e p o s i t ó r i o e x t e r n o . ( E x : s a l v a n d o n o G i t H u b ) Push git push Push Local Server
  • 29.
    P e gu e u m a v e r s ã o d e u m a l i n h a t e m p o r a l e x t e r n a e j u n t e à s u a l i n h a c o r r e n t e . Pull git clone Pull Local Server
  • 30.
    N ã of i q u e c o m m e d o d o t e r m i n a l … Te m o s o p ç õ e s m e l h o r e s 😉
  • 31.
    GitHub Desktop h tt p : // d e s k t o p . g i t h u b . c o m
  • 32.
    h t tp : // s o u r c e t r e e a p p . c o m
  • 33.
    h t tp s : // w w w . g i t k r a k e n . c o m /
  • 34.
    h t tp s : // w w w . g i t - t o w e r . c o m /
  • 35.
  • 36.