0% found this document useful (0 votes)
114 views

Controlando Versoes Com Git e Github

This document introduces some key concepts about source code management and version control using Git. It discusses how version control systems allow developers to track changes to code over time, collaborate with others, and recover from mistakes. The document then outlines steps for setting up and using a local Git repository to organize and version code. It also covers branching, merging, and resolving conflicts when integrating changes.

Uploaded by

Marco Guimarães
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
114 views

Controlando Versoes Com Git e Github

This document introduces some key concepts about source code management and version control using Git. It discusses how version control systems allow developers to track changes to code over time, collaborate with others, and recover from mistakes. The document then outlines steps for setting up and using a local Git repository to organize and version code. It also covers branching, merging, and resolving conflicts when integrating changes.

Uploaded by

Marco Guimarães
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 228

107168

E-book gerado especialmente para Hugo Hiroshi - [email protected]


E-book gerado especialmente para Hugo Hiroshi - [email protected]
E-book gerado especialmente para Hugo Hiroshi - [email protected]
Casa do Código Sumário

4VNÈSJP

*OUSPEVÎÍP 
.BOUFOEPPIJTUØSJDPEPDØEJHP 
5SBCBMIBOEPFNFRVJQF 
4JTUFNBTEFDPOUSPMFEFWFSTÍP 
$POUSPMFEFWFSTÍPSÈQJEPFDPOGJÈWFMDPN(JU 
)PTQFEBOEPDØEJHPOP(JU)VC 
0QSPDFTTPEFFTDSJUBEFTUFMJWSP 

5PVSQSÈUJDP 
*OTUBMBOEPFDPOGJHVSBOEPP(JU 
$SJBOEPVNBSRVJWPUFYUPQBSBWFSTJPOBSNPT 
7FSTJPOBOEPTFVDØEJHPDPN(JU 
$PNQBSUJMIBOEPTFVDØEJHPQFMP(JU)VC 

5SBCBMIBOEPDPNSFQPTJUØSJPMPDBM 
$SJBOEPVNSFQPTJUØSJPMPDBM 
3BTUSFBOEPBSRVJWPT 
(SBWBOEPBSRVJWPTOPSFQPTJUØSJP 
7FSJGJDBOEPPIJTUØSJDPEPTFVSFQPTJUØSJP 

E-book gerado especialmente para Hugo Hiroshi - [email protected]


Sumário Casa do Código

7FSJGJDBOEPNVEBOÎBTOPTBSRVJWPTSBTUSFBEPT 
3FNPWFOEPBSRVJWPTEPSFQPTJUØSJP 
3FOPNFBOEPFNPWFOEPBSRVJWPT 
%FTGB[FOEPNVEBOÎBT 

5SBCBMIBOEPDPNSFQPTJUØSJPSFNPUP 
3FQPTJUØSJPSFNPUP 
"EJDJPOBOEPPSFQPTJUØSJPSFNPUP 
&OWJBOEPDPNNJUTQBSBPSFQPTJUØSJPSFNPUP 
$MPOBOEPPSFQPTJUØSJPSFNPUP 
4JODSPOJ[BOEPPSFQPTJUØSJPMPDBM 
1SPUPDPMPTTVQPSUBEPTQFMP(JU 

)PTQFEBOEPPSFQPTJUØSJPOP(JU)VC 
4FSWJÎPTEFIPTQFEBHFNEFQSPKFUPT 
(JU)VCBSFEFTPDJBMEPTEFTFOWPMWFEPSFT 
&ODPOUSBOEPQSPKFUPTFWJTVBMJ[BOEPPDØEJHPGPOUF 
$SJBOEPVNVTVÈSJPOP(JU)VC 
$SJBOEPPSFQPTJUØSJPEPQSPKFUP 
&OWJBOEPPTDPNNJUTEPQSPKFUPQBSBP(JU)VC 
$MPOBOEPPSFQPTJUØSJPIPTQFEBEPOP(JU)VC 
$PMBCPSBOEPDPNQSPKFUPTPQFOTPVSDF 

0SHBOJ[BOEPPUSBCBMIPDPNCSBODIFT 
"CSBODINBTUFS 
$SJBOEPVNBCSBODI 
5SPDBOEPEFCSBODI 
%FMFUBOEPVNBCSBODI 

E-book gerado especialmente para Hugo Hiroshi - [email protected]


Casa do Código Sumário

$PNJUBOEPDØEJHPFNVNBOPWBCSBODI 
7PMUBOEPQBSBPNBTUFSFGB[FOEPVNBBMUFSBÎÍP 
.FTDMBOEPBMUFSBÎÜFT 

5SBCBMIBOEPFNFRVJQFDPNCSBODIFTSFNPUBT 
#SBODIFTSFNPUBT 
$PNQBSUJMIBOEPCSBODIFT 
0CUFOEPOPWBTCSBODIFTSFNPUBTFNPVUSPTSFQPTJUØSJPT 
&OWJBOEPDPNNJUTQBSBPSFQPTJUØSJPDFOUSBM 
0CUFOEPDPNNJUTEFVNBCSBODISFNPUB 
.FTDMBOEPCSBODIFTSFNPUBTFMPDBJT 
%FMFUBOEPCSBODIFTSFNPUBT 

$POUSPMBOEPWFSTÜFTEPDØEJHPDPNUBHT 
$SJBOEP MJTUBOEPFEFMFUBOEPUBHT 
.BJTJOGPSNBÎÜFTDPNUBHTBOPUBEBT 
$PNQBSUJMIBOEPUBHTDPNBTVBFRVJQF 

-JEBOEPDPNDPOGMJUPT 
.FTDMBOEPNVEBOÎBTFNVNNFTNPBSRVJWPTFNDPOGMJUPT
$POGMJUPTBQØTVNNFSHFDPNNVEBOÎBTFNVNNFTNP 
BSRVJWP 
3FTPMWFOEPDPOGMJUPTBQØTVNSFCBTF 
6TBOEPVNBGFSSBNFOUBQBSBSFTPMWFSDPOGMJUPT 

.BOFJSBTEFUSBCBMIBSDPN(JU 
6UJMJ[BOEPTØBCSBODINBTUFSDPNVNSFQPTJUØSJPDFOUSBM
6UJMJ[BOEPCSBODIFTQPSGVODJPOBMJEBEFDPNVN 
SFQPTJUØSJPDFOUSBM 
6UJMJ[BOEPCSBODIFTQPSFUBQBEFEFTFOWPMWJNFOUPDPNVN

E-book gerado especialmente para Hugo Hiroshi - [email protected]


Sumário Casa do Código

SFQPTJUØSJPDFOUSBM 
$PMBCPSBOEPDPNQSPKFUPTPQFOTPVSDFDPN'PSLF1VMM
3FRVFTU 
0SHBOJ[BOEPQSPKFUPTPQFOTPVSDFHJHBOUFTDPTDPN%JUBEPS
F5FOFOUFT 

"QÐOEJDF─(JU)VCOP8JOEPXT 
*OTUBMBOEPP(JU)VCGPS8JOEPXT 
$SJBOEPVNOPWPSFQPTJUØSJP 
&GFUVBOEPDPNNJUTOPSFQPTJUØSJP 
%FUBMIBOEPPTDPNNJUT 
&OWJBOEPPSFQPTJUØSJPQBSBP(JU)VC 
5SBCBMIBOEPDPNCSBODIFT 

Versão: 20.8.24

E-book gerado especialmente para Hugo Hiroshi - [email protected]


CAPÍTULO 1

*/530%6±°0

."/5&/%00)*45»3*$0%0$»%*(0
7JEBEFQSPHSBNBEPSOÍPÏGÈDJM)ÈTFNQSFVNBQSFTTÍPQPS
FOUSFHBTSÈQJEBTEFOPWBTGVODJPOBMJEBEFT.BT BQFTBSEBQSFTTB Ï
OFDFTTÈSJP QSFTUBS BUFOÎÍP OP RVF FTUBNPT GB[FOEP  NFTNP TF B
BMUFSBÎÍP GPS QFRVFOB "P NFYFSNPT FN VN DØEJHP FYJTUFOUF  Ï
JNQPSUBOUFUPNBSNPTDVJEBEPQBSBOÍPRVFCSBSPRVFKÈGVODJPOB

1PSJTTP RVFSFNPTNFYFSPNÓOJNPQPTTÓWFMOPDØEJHP5FNPT
NFEP EF SFNPWFS DØEJHP PCTPMFUP  OÍP VUJMJ[BEP PV BUÏ NFTNP
DPNFOUBEP  NFTNP RVF NBOUÐMP KÈ OFN GBÎB TFOUJEP /ÍP Ï
JODPNVNOPNFSDBEPWFSNPTDØEJHPGVODJPOBMBDPNQBOIBEPEF
DFOUFOBTEFMJOIBTEFDØEJHPDPNFOUBEP

4FN EÞWJEB  Ï JOUFSFTTBOUF NBOUFS P IJTUØSJDP EP DØEJHP EPT


QSPKFUPT  QBSB FOUFOEFSNPT DPNP DIFHBNPT BUÏ BMJ .BT NBOUFS
FTTF IJTUØSJDP KVOUP BP DØEJHP BUVBM  DPN P EFDPSSFS EP UFNQP
EFJYB OPTTPT QSPKFUPT DPOGVTPT  QPMVÓEPT DPN USFDIPT F
DPNFOUÈSJPT RVF QPEFSJBN TFS FYDMVÓEPT TFN BGFUBS P
GVODJPOBNFOUPEPTJTUFNB

4FSJB CPN TF IPVWFTTF VNB NBOFJSB EF OBWFHBSNPT QFMP


DØEJHPEPQBTTBEP DPNPVNBNÈRVJOBEPUFNQPQBSBDØEJHP

1 INTRODUÇÃO 1
E-book gerado especialmente para Hugo Hiroshi - [email protected]
53"#"-)"/%0&.&26*1&
.BT  NFTNP RVF UJWÏTTFNPT FTTB NÈRVJOB EP UFNQP  UFNPT
PVUSPQSPCMFNBNVJUPSBSBNFOUFUSBCBMIBNPTTP[JOIPT

$POTUSVJS VN TJTUFNB FN FRVJQF Ï VN HSBOEF EFTBGJP /PTTP


DØEJHPUFNEFTFJOUFHSBSEFNBOFJSBUSBOTQBSFOUFFTFNFNFOEBT
DPNPDØEJHPEFUPEPTPTPVUSPTNFNCSPTEBOPTTBFRVJQF

$PNP QPEFNPT EFUFDUBS RVF FTUBNPT BMUFSBOEP P NFTNP


DØEJHP RVF VN DPMFHB  $PNP NFTDMBS BT BMUFSBÎÜFT RVF GJ[FNPT
DPN BT EFNBJT BMUFSBÎÜFT EB FRVJQF  & DPNP JEFOUJGJDBS DPOGMJUPT
FOUSFFTTBTBMUFSBÎÜFT 'B[FSJTTPNBOVBMNFOUF DPNDBEFSOFUBTPV
QMBOJMIBT F NVJUB DPOWFSTB  QBSFDF USBCBMIPTP EFNBJT F CBTUBOUF
TVTDFUÓWFMBFSSPTFFTRVFDJNFOUPT

4FSJBCPNTFUJWÏTTFNPTVNSPCÙEFJOUFHSBÎÍPEFDØEJHP RVF
GJ[FTTFUPEPFTTFUSBCBMIPBVUPNBUJDBNFOUF

4*45&."4%&$0/530-&%&7&34°0
&YJTUFNGFSSBNFOUBTRVFGVODJPOBNDPNPNÈRVJOBTEPUFNQP
F SPCÙT EF JOUFHSBÎÍP QBSB P TFV DØEJHP &MBT OPT QFSNJUFN
BDPNQBOIBSBTBMUFSBÎÜFTEFTEFBTWFSTÜFTNBJTBOUJHBT5BNCÏNÏ
QPTTÓWFMEFUFDUBS F NFTDMBS BMUFSBÎÜFT OPT NFTNPT BSRVJWPT  BMÏN
EFJEFOUJGJDBSDPOGMJUPT UVEPEFNBOFJSBBVUPNÈUJDB

&TTBT GFSSBNFOUBT TÍP DIBNBEBT EF TJTUFNBT EF DPOUSPMF EF


WFSTÍP

/FTTFUJQPEFGFSSBNFOUB IÈVNSFQPTJUØSJPRVFOPTQFSNJUF
PCUFS RVBMRVFS WFSTÍP KÈ FYJTUFOUF EP DØEJHP 4FNQSF RVF

2 1.2 TRABALHANDO EM EQUIPE


E-book gerado especialmente para Hugo Hiroshi - [email protected]
RVJTFSNPT DPOUSPMBS BT WFSTÜFT EF BMHVN BSRVJWP  UFNPT EF
JOGPSNBSRVFRVFSFNPTSBTUSFÈMPOPSFQPTJUØSJP"DBEBNVEBOÎB
RVF EFTFKBNPT FGFUJWBS  EFWFNPT BSNB[FOBS BT BMUFSBÎÜFT OFTTF
SFQPTJUØSJP

"MUFSBÎÜFT OPT NFTNPT BSRVJWPT TÍP NFTDMBEBT EF NBOFJSB


BVUPNÈUJDB TFNQSF RVF QPTTÓWFM +È QPTTÓWFJT DPOGMJUPT TÍP
JEFOUJGJDBEPT B DBEB WF[ RVF PCUFNPT BT NVEBOÎBT EPT OPTTPT
DPMFHBTEFUJNF

%FTEFBEÏDBEBEF FYJTUFFTTFUJQPEFGFSSBNFOUB"MHVOT
FYFNQMPTEFTJTUFNBTEFDPOUSPMFEFWFSTÍPNBJTBOUJHPTTÍP$74
$MFBS$BTF  4PVSDF4BGF F 47/ RVF BJOEB Ï CBTUBOUF VTBEP OBT
FNQSFTBT


&NNFBEPTEBEÏDBEBEF TVSHJSBNTJTUFNBTEFDPOUSPMF
EF WFSTÍP NBJT NPEFSOPT  NBJT SÈQJEPT F DPOGJÈWFJT  DPNP
.FSDVSJBM #B[BBSF ÏDMBSP (JU

 $0/530-& %& 7&34°0 3«1*%0 &


$0/'*«7&-$0.(*5
0 (JU Ï VN TJTUFNB EF DPOUSPMF EF WFSTÍP RVF  QFMB TVB
FTUSVUVSBJOUFSOB ÏVNBNÈRVJOBEPUFNQPFYUSFNBNFOUFSÈQJEB
FVNSPCÙEFJOUFHSBÎÍPCFNDPNQFUFOUF'PJDSJBEPFNQPS
-JOVT5PSWBMET PNFTNPDSJBEPSEPLFSOFMEP-JOVY

)PKFFNEJB BMÏNEPLFSOFMEP-JOVY BGFSSBNFOUBÏVTBEBFN


EJWFSTPT PVUSPT QSPKFUPT EF DØEJHP BCFSUP 0 (JU UBNCÏN Ï
CBTUBOUF VUJMJ[BEP FN FNQSFTBT FN UPEP P NVOEP  JODMVTJWF OP
#SBTJM

1.4 CONTROLE DE VERSÃO RÁPIDO E CONFIÁVEL COM GIT 3


E-book gerado especialmente para Hugo Hiroshi - [email protected]
"UVBMNFOUF DPOIFDFSCFNDPNPVTBSP(JUÏVNBIBCJMJEBEF
JNQPSUBOUF QBSB VNB DBSSFJSB CFNTVDFEJEB OP EFTFOWPMWJNFOUP
EFTPGUXBSF

)041&%"/%0$»%*(0/0(*5)6#
&N   GPJ DSJBEP P (JU)VC  VNB BQMJDBÎÍP 8FC RVF
QPTTJCJMJUBBIPTQFEBHFNEFSFQPTJUØSJPT(JU BMÏNEFTFSWJSDPNP
VNBSFEFTPDJBMQBSBQSPHSBNBEPSFT

%JWFSTPT QSPKFUPT EF DØEJHP BCFSUP JNQPSUBOUFT TÍP


IPTQFEBEPT OP (JU)VC DPNP K2VFSZ  /PEFKT  3VCZ 0O 3BJMT
+FOLJOT 4QSJOH +6OJUFNVJUPTPVUSPT

0130$&440%&&4$3*5"%&45&-*730
" VUJMJ[BÎÍP EP (JU OÍP Ï SFTUSJUB BQFOBT BP EFTFOWPMWJNFOUP
EFTPGUXBSF NVJUPTBENJOJTUSBEPSFTEFSFEF QPSFYFNQMP VTBNP
(JU QBSB NBOUFS P IJTUØSJDP EF FWPMVÎÍP EF BSRVJWPT EF
DPOGJHVSBÎÜFTFNTFSWJEPSFT

"DSFEJUFN BUÏNFTNPBFTDSJUBEFTUFMJWSPGPJGFJUBVUJMJ[BOEPP
(JU /ÍP BQFOBT FTTF  NBT UPEPT PT MJWSPT EB FEJUPSB $BTB EP
$ØEJHPVTBN P (JU DPNP GFSSBNFOUB EF DPOUSPMF EF WFSTÍP  QBSB
NBOUFSPIJTUØSJDPEFFWPMVÎÍPEPTDBQÓUVMPT0(JU)VCUBNCÏNÏ
VUJMJ[BEPQBSBIPTQFEBHFNEPTSFQPTJUØSJPTEPTMJWSPT

4 1.5 HOSPEDANDO CÓDIGO NO GITHUB


E-book gerado especialmente para Hugo Hiroshi - [email protected]
7PDÐ QPEF EJTDVUJS TPCSF FTUF MJWSP OP 'ØSVN EB $BTB EP
$ØEJHPIUUQGPSVNDBTBEPDPEJHPDPNCS

$BTPWPDÐEFTFKFTVCNFUFSBMHVNBFSSBUBPVTVHFTUÍP BDFTTF
IUUQFSSBUBTDBTBEPDPEJHPDPNCS

1.6 O PROCESSO DE ESCRITA DESTE LIVRO 5


E-book gerado especialmente para Hugo Hiroshi - [email protected]
CAPÍTULO 2

506313«5*$0

/FTUFDBQÓUVMP GBSFNPTVNUPVSCFNQSÈUJDPTPCSFDPNPVTBS
P (JU QBSB WFSTJPOBS OPTTPT QSPKFUPT /ÍP TF QSFPDVQF DPN P
TJHOJGJDBEP EPT DPNBOEPT /P EFDPSSFS EP MJWSP  UPEPT PT
DPNBOEPTVTBEPTBRVJTFSÍPFYQMJDBEPTDPNQSPGVOEJEBEF

*/45"-"/%0&$0/'*(63"/%00(*5
"OUFTEFVUJMJ[BSNPTP(JU ÏGVOEBNFOUBMJOTUBMÈMP&TDPMIBB
TFHVJSP4JTUFNB0QFSBDJPOBMBQSPQSJBEPFNÍPTËPCSB

*OTUBMBOEPOP8JOEPXT
"DFTTF B TFHVJOUF 63-  GBÎB P EPXOMPBE F JOTUBMF B ÞMUJNB
WFSTÍPEJTQPOÓWFMIUUQNTZTHJUHJUIVCJP

"JOTUBMBÎÍPÏCBTUBOUFTJNQMFT&TDPMIBBTPQÎÜFTQBESÍP

4FSÍPJOTUBMBEPTBMHVOTQSPHSBNBT TFOEPPNBJTJNQPSUBOUFP
(JU #BTI  RVF QFSNJUF RVF P (JU TFKB FYFDVUBEP QFMB MJOIB EF
DPNBOEP OP 8JOEPXT %Ð EVQMP DMJRVF OP ÓDPOF EP (JU #BTI F
TFSÈ BCFSUP VN UFSNJOBM  DPN P TFHVJOUF QSPNQU OB MJOIB EF
DPNBOEP
$

6 2 TOUR PRÁTICO
E-book gerado especialmente para Hugo Hiroshi - [email protected]
&TTFQSPNQUTFSÈTFVBNJHPBQBSUJSEFBHPSB/ÍPUFOIBNFEP
4FNQSFRVFGBMBSNPTEFUFSNJOBM FTUBSFNPTGBMBOEPEP(JU#BTI

*OTUBMBOEPOP.BD
#BJYFBÞMUJNBWFSTÍPEPJOTUBMBEPSHSÈGJDPEP(JUQBSB.BD04
9 B QBSUJS EP MJOL IUUQTDPEFHPPHMFDPNQHJUPTY
JOTUBMMFSEPXOMPBET

"CSBVNUFSNJOBMFQSFQBSFTFQBSBVTBSP(JU

*OTUBMBOEPOP-JOVY
1BSB JOTUBMBS P (JU OP 6CVOUV  PV FN VNB PVUSB EJTUSJCVJÎÍP
CBTFBEBFN%FCJBO FYFDVUFFNVNUFSNJOBM
$ sudo apt-get install git

/P'FEPSB VUJMJ[F
$ sudo yum install git

1BSB BT EFNBJT EJTUSJCVJÎÜFT EP -JOVY  WFKB P DPNBOEP FN


IUUQHJUTDNDPNEPXOMPBEMJOVY

$POGJHVSBÎÜFTCÈTJDBT
²JNQPSUBOUFOPTJEFOUJGJDBSNPTQBSBP(JU JOGPSNBOEPOPTTP
OPNFFFNBJM&NVNUFSNJOBM FYFDVUFPTDPNBOEPTBTFHVJS
$ git config --global user.name "Fulano da Silva"
$ git config --global user.email [email protected]

$MBSP VTFTFVOPNFFFNBJM

2.1 INSTALANDO E CONFIGURANDO O GIT 7


E-book gerado especialmente para Hugo Hiroshi - [email protected]
"-*/)"%&$0."/%0

"NBOFJSBNBJTDPNVNEFVTBS(JUÏQFMBMJOIBEFDPNBOEP
BDFTTÓWFMQPSNFJPEFVNUFSNJOBM²PKFJUPRVFBNBJPSQBSUF
EPT CPOT QSPGJTTJPOBJT EP NFSDBEP VUJMJ[B P (JU F TFSÈ OPTTB
FTDPMIBOFTUFMJWSP

(*5)6#'038*/%084

"NBJPSJBEPTVTVÈSJPTEP8JOEPXTOÍPUFNPIÈCJUPEFVTBS
P QSPNQU EF DPNBOEPT  F QSFGFSF JOTUBMBS BMHVNB BQMJDBÎÍP
WJTVBMQBSBUSBCBMIBSDPNP(JU

6NB EFTUBT BQMJDBÎÜFT Ï P (JU)VC GPS 8JOEPXT  F


NPTUSBSFNPT DPNP VUJMJ[ÈMB OP "QÐOEJDF ─ (JU)VC OP
8JOEPXT

 $3*"/%0 6. "326*70 5&950 1"3"


7&34*0/"3.04
"OUFTEFVTBSNPTP(JU WBNPTDSJBSOBTVBQBTUBQFTTPBM VN
EJSFUØSJPDIBNBEP citacoes DPNVNBSRVJWP filmes.txt 

%FOUSPEPBSRVJWP filmes.txt DPMPRVFPTFHVJOUFDPOUFÞEP


"Não há certezas, apenas oportunidades." (V de Vingança)
"Diga 'olá' para meu pequeno amigo!" (Scarface)

8 2.2 CRIANDO UM ARQUIVO TEXTO PARA VERSIONARMOS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
1"45"1&440"-

" QBTUB QFTTPBM PV IPNF EJSFDUPSZ  FN JOHMÐT


 Ï P MPDBM EPT
BSRVJWPTEFVTVÈSJPDPNPEPDVNFOUPT GPUPT NÞTJDBTFUD

4F WPDÐ OÍP TPVCFS POEF Ï B QBTUB QFTTPBM  EJHJUF P TFHVJOUF


DPNBOEPFNVNUFSNJOBM
$ echo ~

/P 8JOEPXT 7JTUB   PV   TFSÈ BMHP DPNP


C:\Users\Fulano\ PV OP(JU#BTI  /c/Users/Fulano/ 

/P 8JOEPXT   91 PV   TFSÈ BMHP DPNP


C:\Documents and Settings\Fulano\  PV  OP (JU #BTI
/c/Documents and Settings/Fulano 

/P -JOVY  TFSÈ /home/fulano  F  OP .BD 04 9


/Users/Fulano 

7&34*0/"/%04&6$»%*(0$0.(*5

$SJBOEPVNSFQPTJUØSJP
"CSBVNUFSNJOBMFWÈBUÏPEJSFUØSJP citacoes 
$ cd ~/citacoes

1BSB USBOTGPSNBS P EJSFUØSJP BUVBM FN VN SFQPTJUØSJP EP (JU


CBTUBFYFDVUBSPDPNBOEP git init 
$ git init

2.3 VERSIONANDO SEU CÓDIGO COM GIT 9


E-book gerado especialmente para Hugo Hiroshi - [email protected]
%FWFSÈBQBSFDFSVNBNFOTBHFNTFNFMIBOUFËTFHVJOUF
Initialized empty Git repository in /home/fulano/citacoes/.git/

1SPOUP PQSPKFUPKÈÏVNSFQPTJUØSJP(JUWB[JP

0CTFSWFRVFGPJDSJBEBVNBQBTUBPDVMUBDPNPOPNF .git 

3BTUSFBOEPPBSRVJWP
.BTFPBSRVJWP filmes.txt 4FSÈRVFKÈFTUÈWFSTJPOBEP

1PEFNPTWFSBTJUVBÎÍPEPTBSRVJWPTOPSFQPTJUØSJP(JUDPNP
DPNBOEP
git status

"TBÓEBEFWFSÈTFSBMHPDPNP
# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add <file>..." to include in what will be
committed)
#
# filmes.txt
nothing added to commit but untracked files present (use
"git add" to track)

0CTFSWF B NFOTBHFN BOUFSJPS FMB JOEJDB RVF P BSRVJWP


filmes.txt BJOEBOÍPGPJSBTUSFBEPQFMP(JU

1BSBRVFPBSRVJWPTFKBSBTUSFBEP EFWFNPTFYFDVUBSPTFHVJOUF
DPNBOEP
git add filmes.txt

"HPSB  TF FYFDVUBSNPT git status  OPWBNFOUF  UFSFNPT B

10 2.3 VERSIONANDO SEU CÓDIGO COM GIT


E-book gerado especialmente para Hugo Hiroshi - [email protected]
TFHVJOUFTBÓEB
# On branch master
#
# Initial commit
#
# Changes to be committed:
# (use "git rm --cached <file>..." to unstage)
#
# new file: filmes.txt
#

(SBWBOEPPBSRVJWPOPSFQPTJUØSJP
0 SFTVMUBEP BOUFSJPS NPTUSB RVF P DPOUFÞEP EP BSRVJWP
filmes.txt KÈFTUÈTFOEPSBTUSFBEPQFMP(JU NBTBJOEBOÍPGPJ
HSBWBEP PV DPNJUBEP  FN VNB MJOHVBHFN NBJT UÏDOJDB
 OP
SFQPTJUØSJP

1BSBHSBWBSNPTBTNVEBOÎBTOPSFQPTJUØSJP EFWFNPTFYFDVUBS
PDPNBOEP
git commit -m "Arquivo inicial de citacoes"

0CTFSWF RVF GPJ JOWPDBEP P DPNBOEP git commit  DPN B


PQÎÍP -m  QBSB JOGPSNBS B NFOTBHFN EP DPNNJU %FWF UFS
BQBSFDJEPBMHPDPNPBTFHVJOUFNFOTBHFN
[master (root-commit) 3bc8267] Arquivo inicial de citacoes
1 file changed, 2 insertions(+)
create mode 100644 filmes.txt

4FFYFDVUBSNPT git status OPWBNFOUF UFSFNPT


# On branch master
nothing to commit, working directory clean

"MUFSBOEPPBSRVJWP

2.3 VERSIONANDO SEU CÓDIGO COM GIT 11


E-book gerado especialmente para Hugo Hiroshi - [email protected]
*OTJSB NBJT VNB MJOIB OP BSRVJWP filmes.txt  DPN P
DPOUFÞEP
"Hasta la vista, baby." (Exterminador do Futuro 2)

%FQPJT EJTTP  TF FYFDVUBSNPT git status  OPWBNFOUF


QPEFNPTPCTFSWBSRVFIÈVNBOPWBNVEBOÎBQBSBTFSSBTUSFBEB
# On branch master
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in
working directory)
#
# modified: filmes.txt
#
no changes added to commit (use "git add" and/or
"git commit -a")

3BTUSFBOEPFHSBWBOEPBTBMUFSBÎÜFTOPSFQPTJUØSJP
1BSBSBTUSFBSNPTBNPEJGJDBÎÍP EFWFNPTFYFDVUBSPDPNBOEP
git add OPWBNFOUF

git add filmes.txt

$PN B NPEJGJDBÎÍP SBTUSFBEB  QPEFNPT HSBWÈMB OP


SFQPTJUØSJP DPNPDPNBOEP git commit 
git commit -m "Inserindo nova citacao"

%FWFNPTUFSVNBSFTQPTUBQBSFDJEBDPN
[master 67f8a28] Inserindo nova citacao
1 file changed, 1 insertion(+)

7FSJGJDBOEPBMUFSBÎÜFTSFBMJ[BEBT
1BSB WFSJGJDBS P IJTUØSJDP EBT BMUFSBÎÜFT HSBWBEBT OP

12 2.3 VERSIONANDO SEU CÓDIGO COM GIT


E-book gerado especialmente para Hugo Hiroshi - [email protected]
SFQPTJUØSJP QPEFNPTFYFDVUBSPDPNBOEP git log 
$ git log

"TBÓEBTFSÈQBSFDJEBDPN
commit 67f8a287ddd13021e85355694f0c42f0b4f8f6ff
Author: Fulano da Silva <[email protected]>
Date: Fri Apr 11 21:23:34 2014 -0300

Inserindo nova citacao

commit 3bc8267d18d209bb38781aba69c29000d1e831cb
Author: Fulano da Silva <[email protected]>
Date: Fri Apr 11 21:21:38 2014 -0300

Arquivo inicial de citacoes

1SPOUP 5FNPT VN SFQPTJUØSJP DSJBEP DPN BT BMUFSBÎÜFT OP


BSRVJWP filmes.txt EFWJEBNFOUFHSBWBEBT.BTFBHPSB

 $0.1"35*-)"/%0 4&6 $»%*(0 1&-0


(*5)6#
1BSB RVF P NVOEP QPTTB EFTDPCSJS OPTTP JODSÓWFM QSPKFUP
UFNPT EF DPNQBSUJMIÈMP OB JOUFSOFU 1BSB JTTP  VTBSFNPT VNB
BQMJDBÎÍPXFCDIBNBEB(JU)VC

$SJBOEPVNBDPOUBOP(JU)VC
0QSJNFJSPQBTTPÏDSJBSVNBDPOUBOP(JU)VC1BSBQSPKFUPT
EF DØEJHP BCFSUP  OÍP IÈ DVTUP OFOIVN $PN VN OBWFHBEPS
BDFTTFIUUQTHJUIVCDPN

1SFFODIBTFVOPNF FNBJMFFTDPMIBVNBTFOIB

2.4 COMPARTILHANDO SEU CÓDIGO PELO GITHUB 13


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB$SJBOEPVNBDPOUBOP(JU)VC

&OUÍP  TFMFDJPOF P QMBOP BQSPQSJBEP F GJOBMJ[F P DBEBTUSP


DMJDBOEPFN'JOJTI4JHOVQ

14 2.4 COMPARTILHANDO SEU CÓDIGO PELO GITHUB


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB4FMFDJPOBOEPVNQMBOPOP(JU)VC

4FOFDFTTÈSJP WFSJGJRVFPFNBJM

$SJBOEPVNSFQPTJUØSJPOP(JU)VC
"HPSB QPEFNPT DSJBS VN SFQPTJUØSJP SFNPUP  RVF GJDBSÈ
EJTQPOÓWFMQBSBUPEPT EBJOUFSOFU 1BSBJTTP DMJRVFOPCPUÍP /FX
3FQPTJUPSZBQØTBDFTTBSIUUQTHJUIVCDPN

2.4 COMPARTILHANDO SEU CÓDIGO PELO GITHUB 15


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB/PWPSFQPTJUØSJPOP(JU)VC

/P 3FQPTJUPSZ OBNF  EFWFNPT QSFFODIFS P OPNF EP


SFQPTJUØSJP SFNPUP /P OPTTP DBTP  WBNPT QSFFODIFS DPN
DJUBÎÜFT %FJYF P SFQPTJUØSJP DPNP 1VCMJD  QBSB RVF RVBMRVFS
QFTTPB DPOTJHB WFS P TFV DØEJHP "T EFNBJT PQÎÜFT QPEFN GJDBS
DPN PT WBMPSFT QBESÍP 'JOBMNFOUF  EFWFNPT DMJDBS FN $SFBUF
SFQPTJUPSZ

'JHVSB$SJBOEPSFQPTJUØSJPOP(JU)VC

1SPOUP KÈGPJDSJBEPVNSFQPTJUØSJPWB[JPMÈOP(JU)VC

16 2.4 COMPARTILHANDO SEU CÓDIGO PELO GITHUB


E-book gerado especialmente para Hugo Hiroshi - [email protected]
"QPOUBOEPTFVQSPKFUPQBSBP(JU)VC
%FWFNPTBHPSBBQPOUBSPSFQPTJUØSJPEBOPTTBNÈRVJOBQBSBP
SFQPTJUØSJPEP(JU)VC

&N VN UFSNJOBM  DFSUJGJRVFTF EF FTUBS OP EJSFUØSJP


citacoes RVFUFNPSFQPTJUØSJPMPDBM

$ cd ~/citacoes

&OUÍP  FYFDVUF P DPNBOEP git remote  DPOGPSNF P RVF


TFHVF
$ git remote add origin https://github.com/fulanodasilva/
citacoes.git

/ÍPEFJYFEFBMUFSBS fulanodasilva  QBSB P TFVVTVÈSJPEP


(JU)VC/ÍPEFWFBQBSFDFSOFOIVNBNFOTBHFN

$PNPDPNBOEPBOUFSJPS BQPOUBNPTPOPNF origin QBSBP


SFQPTJUØSJPMÈEP(JU)VC

&OWJBOEPBTBMUFSBÎÜFTQBSBP(JU)VC
$PNPSFQPTJUØSJPSFNPUPDPOGJHVSBEP QPEFNPTFOWJBSOPTTBT
NVEBOÎBTQBSBP(JU)VCF QPSDPOTFRVÐODJB QBSBUPEPPNVOEP

1BSB JTTP  CBTUB FYFDVUBS P DPNBOEP git push  EB TFHVJOUF


GPSNB
$ git push origin master

$PN P DPNBOEP BOUFSJPS  FOWJBNPT BT BMUFSBÎÜFT QBSB P


SFQPTJUØSJPSFNPUPDPOGJHVSBEPDPNPOPNF origin 

'PSOFÎB TFV VTVÈSJP F TFOIB EP (JU)VC RVBOEP TPMJDJUBEP

2.4 COMPARTILHANDO SEU CÓDIGO PELO GITHUB 17


E-book gerado especialmente para Hugo Hiroshi - [email protected]
%FWFSÈBQBSFDFSBMHPTFNFMIBOUFËTFHVJOUFTBÓEB
Username for 'https://github.com': fulanodasilva
Password for 'https://[email protected]':
Counting objects: 6, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (4/4), done.
Writing objects: 100% (6/6), 609 bytes | 0 bytes/s, done.
Total 6 (delta 1), reused 0 (delta 0)
To https://github.com/fulanodasilva/citacoes.git
* [new branch] master -> master

7È BUÏ B QÈHJOB EP TFV QSPKFUP OP (JU)VC


IUUQTHJUIVCDPNGVMBOPEBTJMWBDJUBDPFT

'JHVSB1ÈHJOBEPQSPKFUPOP(JU)VC

0CTFSWFRVFPBSRVJWPRVFWPDÐFOWJPVKÈFTUÈEJTQPOÓWFMQBSB
RVBMRVFS QFTTPB EB JOUFSOFU "WJTF TFV QSJNP  TVB WJ[JOIB  UPEP
NVOEP

²QPTTÓWFMWFSUPEBTBTBMUFSBÎÜFTOPQSPKFUPBUÏBHPSB OPDBTP
GPSBN EVBT
 QPS NFJP EP FOEFSFÎP
IUUQTHJUIVCDPNGVMBOPEBTJMWBDJUBDPFTDPNNJUTNBTUFS

'JHVSB-JTUBOEPBMUFSBÎÜFTHSBWBEBTOP(JU)VC

18 2.4 COMPARTILHANDO SEU CÓDIGO PELO GITHUB


E-book gerado especialmente para Hugo Hiroshi - [email protected]
4FDMJDBSNPTOBÞMUJNBBMUFSBÎÍP QPSFYFNQMP ÏQPTTÓWFMWFSBT
NVEBOÎBTRVFGPSBNGFJUBT'BTDJOBOUF OÍP

'JHVSB%FUBMIBOEPVNBBMUFSBÎÍPHSBWBEBOP(JU)VC

0CUFOEPQSPKFUPEP(JU)VC
$PNPQSPKFUPOP(JU)VC RVBMRVFSVNQPEFBDFTTBSPDØEJHP
F WFS P IJTUØSJDP  NFTNP TFN VNB DPOUB 4F B QFTTPB UJWFS
DBEBTUSBEBOP(JU)VC TFSÈQPTTÓWFMCBJYBSPDØEJHP

7BNPTTJNVMBSJTTP CBJYBOEPPDØEJHPFNPVUSPEJSFUØSJPEP
TFVDPNQVUBEPS

/B TVB QBTUB QFTTPBM  DSJF VN EJSFUØSJP DIBNBEP


projetos_git &OUÍP PBDFTTFQFMPUFSNJOBM

$ cd ~/projetos_git

1BSB PCUFS P DØEJHP EP QSPKFUP MÈ EP (JU)VC  FYFDVUF P


DPNBOEP git clone DPOGPSNFPTFHVJOUF
git clone https://github.com/fulanodasilva/citacoes.git

/ÍP FTRVFÎB EF BMUFSBS fulanodasilva  QBSB P TFV VTVÈSJP


EP(JU)VC

%FWFSÈBQBSFDFSBMHPDPNP

2.4 COMPARTILHANDO SEU CÓDIGO PELO GITHUB 19


E-book gerado especialmente para Hugo Hiroshi - [email protected]
Cloning into 'citacoes'...
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 6 (delta 1), reused 6 (delta 1)
Unpacking objects: 100% (6/6), done.
Checking connectivity... done

0CTFSWF OP EJSFUØSJP projetos_git  RVF GPJ DSJBEP VN


TVCEJSFUØSJPDIBNBEP citacoes %FOUSPEFTTFTVCEJSFUØSJP IÈP
BSRVJWP filmes.txt DPNFYBUBNFOUFPNFTNPDPOUFÞEPMÈEP
(JU)VC

)È UBNCÏN VN EJSFUØSJP PDVMUP DIBNBEP .git  SFWFMBOEP


RVFUFNPTVNBDØQJBEPSFQPTJUØSJPPSJHJOBM

7ÈBUÏPTVCEJSFUØSJP citacoes FYFDVUBOEPPDPNBOEP


$ cd citacoes

1PEFNPT FYFDVUBS P DPNBOEP git log  OFTTF OPWP


SFQPTJUØSJP
$ git log

5FSFNPTBNFTNBTBÓEBEFBOUFT
commit 67f8a287ddd13021e85355694f0c42f0b4f8f6ff
Author: Fulano da Silva <[email protected]>
Date: Fri Apr 11 21:23:34 2014 -0300

Inserindo nova citacao

commit 3bc8267d18d209bb38781aba69c29000d1e831cb
Author: Fulano da Silva <[email protected]>
Date: Fri Apr 11 21:21:38 2014 -0300

Arquivo inicial de citacoes

4F WPDÐ UJWFS PVUSP DPNQVUBEPS  GBÎB P clone  OFMF /ÍP TF


FTRVFÎB EF JOTUBMBS P (JU  TFHVJOEP PT QBTTPT EP JOÓDJP EFTUF

20 2.4 COMPARTILHANDO SEU CÓDIGO PELO GITHUB


E-book gerado especialmente para Hugo Hiroshi - [email protected]
DBQÓUVMP

(*5&(*5)6#4°0".&4."$0*4"

/ÍP (JU Ï P TJTUFNB EF DPOUSPMF EF WFSTÜFT  DPN P RVBM


JOUFSBHJNPT OB MJOIB EF DPNBOEP +È P (JU)VC Ï VNB SFEF
TPDJBM QBSB QSPHSBNBEPSFT RVF EJTQPOJCJMJ[B SFQPTJUØSJPT (JU
BDFTTÓWFJTSFNPUBNFOUF

0 (JU)VC Ï NVJUP VUJMJ[BEP QBSB QSPKFUPT PQFO TPVSDF RVF


QPTTVFNWÈSJPTDPMBCPSBEPSFTEPNVOEPUPEP.BJTBEJBOUF
OPTBQSPGVOEBSFNPTFNBNCPT

2.4 COMPARTILHANDO SEU CÓDIGO PELO GITHUB 21


E-book gerado especialmente para Hugo Hiroshi - [email protected]
CAPÍTULO 3

53"#"-)"/%0$0.
3&104*5»3*0-0$"-

" FNQSFTB .ØWFJT &DPMØHJDPT OPT DPOUSBUPV QBSB GB[FS B


QÈHJOBEBFNQSFTBOBXFC$POWFSTBNPTDPNPEPOPEBFNQSFTB
EJTDVUJNPTTPCSFPDPOUFÞEPCÈTJDPFDSJBNPTVN)5.-TJNQMFT

"QSFTFOUBNPT P SFTVMUBEP F OPTTP DMJFOUF QFEJV QBSB


DPMPDBSNPTBQÈHJOBOPBS-PHPPGJ[FNPTEJWFSTÍPFMVDSP

1PSÏN BEJSFUPSBEFSFMBÎÜFTQÞCMJDBTEBFNQSFTBOÍPHPTUPV
EP UFYUP 1FEJV QBSB BMUFSBSNPT QBSB VN UFYUP CFN NBJPS F DPN
NBJTDBSBEFQSFTTSFMFBTF'J[FNPTBTBMUFSBÎÜFTFQVCMJDBNPT

%FQPJT EF BMHVN UFNQP  P EPOP EB FNQSFTB OPUPV P TJUF


NPEJGJDBEPFOPTDPOUBUPVQBSBWPMUBSNPTDPNBWFSTÍPBOUFSJPS
"DPOUFDF RVF FTRVFDFNPT EF GB[FS CBDLVQ EP BSRVJWP "UÏ
UFOUBNPTVTBSVNSFDVQFSBEPSEFBSRVJWPTPVMFNCSBSPDPOUFÞEP
EFDBCFÎB NBTOÍPUJWFNPTTVDFTTP&BHPSB

$PN NVJUB SFMVUÉODJB  FOUSBNPT FN DPOUBUP DPN P EPOP EB


FNQSFTB QFEJOEP RVF P UFYUP GPTTF EJUP OPWBNFOUF QPS UFMFGPOF
%FQPJTEFBMHVOTNJOVUPTEFYJOHBNFOUPTFEFRVBTFQFSEFSNPTP
DPOUSBUP DPOTFHVJNPTPUFYUPNBJTVNBWF[

22 3 TRABALHANDO COM REPOSITÓRIO LOCAL


E-book gerado especialmente para Hugo Hiroshi - [email protected]
1PYB WJEB %FWÓBNPT UFS NBOUJEP P UFYUP BOUJHP DPNFOUBEP
OBQÈHJOB.BTDPNUBOUBTNVEBOÎBT FNQPVDPUFNQPUFSÓBNPT
NBJTDPNFOUÈSJPTEPRVFDØEJHPEFGBUP

4FUJWÏTTFNPTVUJMJ[BEPVNTJTUFNBEFDPOUSPMFEFWFSTÍPDPNP
P (JU  UFSÓBNPT VNB NÈRVJOB EP UFNQP QBSB P OPTTP DØEJHP "Ó
OPTTBWJEBTFSJBNBJTGÈDJM

$3*"/%06.3&104*5»3*0-0$"-
7BNPT EJ[FS RVF  OB OPTTB QBTUB QFTTPBM  UFNPT VN EJSFUØSJP
DIBNBEP moveis  DPN P BSRVJWP index.html  DPOUFOEP P
TFHVJOUFDPOUFÞEP
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="description" content="Móveis ecológicos">
<meta name="keywords" content="moveis ecologicos">
</head>
<body>
<h1>Móveis Ecológicos S. A.</h1>
<ul>
<li>Móveis de garrafas PET</li>
<li>Móveis de latinhas de alumínio</li>
<li>Móveis de papelão</li>
</ul>
</body>
</html>

"OUFT EF UVEP  WBNPT FOUSBS OP EJSFUØSJP moveis  DPN P


DPNBOEP cd ~/moveis 

1BSB DSJBS VN SFQPTJUØSJP (JU OFTTF EJSFUØSJP  CBTUB


FYFDVUBSNPT
$ git init

3.1 CRIANDO UM REPOSITÓRIO LOCAL 23


E-book gerado especialmente para Hugo Hiroshi - [email protected]
5FSFNPTBTBÓEB
Initialized empty Git repository in /home/fulano/moveis/.git/

" NFOTBHFN BOUFSJPS JOEJDB RVF USBOTGPSNBNPT P EJSFUØSJP


moveis FNVNSFQPTJUØSJP(JU

4FMJTUBSNPTPTBSRVJWPTEPEJSFUØSJP moveis DPNPDPNBOEP


ls -lha UFSFNPTVNBSFTQPTUBTFNFMIBOUFBPRVFTFHVF

total 36K
drwxr-xr-x 3 fulano fulano 4,0K Abr 15 21:30 .
drwx------ 58 fulano fulano 16K Abr 15 21:28 ..
drwxr-xr-x 7 fulano fulano 4,0K Abr 15 21:30 .git
-rw-r--r-- 1 fulano fulano 405 Abr 15 21:28 index.html

0CTFSWFN RVF GPJ DSJBEP VN TVCEJSFUØSJP PDVMUP DIBNBEP


.git  OB QBTUB moveis  &TTF TVCEJSFUØSJP Ï VN SFQPTJUØSJP EP
(JU DPNQMFUP  RVF DPOUFSÈ UPEP P IJTUØSJDP EF BMUFSBÎÜFT EPT
BSRVJWPT FOUSFPVUSBTDPJTBT

1PEFNPTFYFDVUBS git init moveis TFRVJTFSNPTDSJBSVN


EJSFUØSJP WB[JP RVF KÈ Ï VN SFQPTJUØSJP (JU  PV TFKB  RVF KÈ
QPTTVJP .git 

/P DBTP EF UFSNPT PVUSPT TVCEJSFUØSJPT DPNP js  QBSB


BSNB[FOBSDØEJHP+BWBTDSJQUF css QBSBBSNB[FOBSBSRVJWPT$44
UPEBT BT JOGPSNBÎÜFT EFTTFT BSRVJWPT TFSÍP BSNB[FOBEBT OP
NFTNP .git  4F QPS BMHVN NPUJWP RVJTFSNPT QBSBS EF VTBS P
(JU CBTUBSFNPWFSFTTFÞOJDPEJSFUØSJP .git 

24 3.1 CRIANDO UM REPOSITÓRIO LOCAL


E-book gerado especialmente para Hugo Hiroshi - [email protected]
#BTUBPDPNBOEP git init QBSBDSJBSVNSFQPTJUØSJPDPN
(JU  RVF KÈ DSJB MPDBMNFOUF VN SFQPTJUØSJP DPNQMFUP *TTP Ï
CFNNBJTTJNQMFTRVFEJWFSTPTPVUSPTTJTUFNBTEFDPOUSPMFEF
WFSTÍP DPNPP47/ RVFQSFDJTBWBNEBDPOGJHVSBÎÍPEFVN
TFSWJEPS

3"453&"/%0"326*704
1BSBWFSJGJDBSNPTPFTUBEPBUVBMEPOPTTPSFQPTJUØSJP EFWFNPT
FYFDVUBSPDPNBOEP
$ git status

%FWFBQBSFDFSVNBSFTQPTUBQBSFDJEBDPN
# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add <file>..." to include in what will be
committed)
#
# index.html
nothing added to commit but untracked files present (use
"git add" to track)

/PUF RVF P BSRVJWP index.html  BJOEB OÍP FTUÈ TFOEP


SBTUSFBEP FTUÈ FN 6OUSBDLFE GJMFT
 1BSB JOGPSNBS BP (JU RVF P
BSRVJWP index.html EFWFTFSSBTUSFBEP VUJMJ[BNPTPDPNBOEP
$ git add index.html

1SPOUP "HPSB P (JU TBCF RVF FTTF BSRVJWP Ï JNQPSUBOUF F BT

3.2 RASTREANDO ARQUIVOS 25


E-book gerado especialmente para Hugo Hiroshi - [email protected]
NVEBOÎBTEFWFNTFSSBTUSFBEBT

4FFYFDVUBSNPTOPWBNFOUF git status  UFSFNPT B TFHVJOUF


TBÓEB
# On branch master
#
# Initial commit
#
# Changes to be committed:
# (use "git rm --cached <file>..." to unstage)
#
# new file: index.html
#

0CTFSWF RVF P (JU BHPSB QBTTPV B SBTUSFBS P BSRVJWP


index.html FFTUÈQSPOUPQBSBHSBWBSFTTFBSRVJWPOPSFQPTJUØSJP
$IBOHFTUPCFDPNNJUUFE


3BTUSFBOEPWÈSJPTBSRVJWPT
7BNPT EJ[FS RVF DSJBNPT VN BSRVJWP estilos.css  OP
EJSFUØSJP moveis DPNPTFHVJOUFDPOUFÞEP
h1 {
font-family: sans-serif;
}
li {
font-family: monospace;
}

5BNCÏNDSJBNPTVNTVCEJSFUØSJP imagens DPNVNBSRVJWP


logo.png DPNVNBJNBHFNTFNFMIBOUFBIUUQHPPHMOHBOV

4FFYFDVUBSNPT git status UFSFNPT


# On branch master
#
# Initial commit
#

26 3.2 RASTREANDO ARQUIVOS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
# Changes to be committed:
# (use "git rm --cached <file>..." to unstage)
#
# new file: index.html
#
# Untracked files:
# (use "git add <file>..." to include in what will be
committed)
#
# estilos.css
# imagens/

0CTFSWFRVFPBSRVJWP estilos.css FPEJSFUØSJP imagens


BJOEBOÍPFTUÍPTFOEPSBTUSFBEPT 6OUSBDLFEGJMFT


4FRVJTFSNPTSBTUSFBSUPEPTFTTFTBSRVJWPT TFSÈRVFUFSFNPTEF
FYFDVUBS git add VNQPSVN

/B WFSEBEF  OÍP 1PEFNPT SBTUSFBS UPEPT FTTFT BSRVJWPT EF


VNBWF[TØDPNPDPNBOEP
$ git add .

0QPOUPEPDPNBOEPBOUFSJPSSFQSFTFOUBUPEPTPTBSRVJWPTOÍP
SBTUSFBEPT EP EJSFUØSJP BUVBM F UBNCÏN EF UPEPT PT TFVT
TVCEJSFUØSJPT

"HPSB  BP FYFDVUBSNPT git status  WFSFNPT RVF UPEPT PT


BSRVJWPTFTUÍPTFOEPSBTUSFBEPT
# On branch master
#
# Initial commit
#
# Changes to be committed:
# (use "git rm --cached <file>..." to unstage)
#
# new file: estilos.css
# new file: imagens/logo.png
# new file: index.html

3.2 RASTREANDO ARQUIVOS 27


E-book gerado especialmente para Hugo Hiroshi - [email protected]
#

4F RVJTÏTTFNPT UFS SBTUSFBEP BQFOBT PT BSRVJWPT EP


TVCEJSFUØSJP imagens QPSFYFNQMP QPEFSÓBNPTUFSFYFDVUBEPP
DPNBOEP git add imagens 

"ÈSFBEFTUBHF
2VBOEP JOGPSNBNPT QBSB P (JU RVF RVFSFNPT SBTUSFBS VN
BSRVJWP FYFDVUBOEP git add QFMBQSJNFJSBWF[ P(JUDPMPDBFTTF
BSRVJWP FN VNB ÈSFB FTQFDJBM EP SFQPTJUØSJP  DIBNBEB EF TUBHF
6NBWF[RVFVNBSRVJWPFTUÈOBÈSFBEFTUBHF UPEBTBTNVEBOÎBT
OFTTFBSRVJWPQBTTBNBTFSFYBNJOBEBT

0 EJSFUØSJP RVF DPOUÏN OPTTPT BSRVJWPT Ï DIBNBEP EF


EJSFUØSJPEFUSBCBMIP PVXPSLJOHEJSFDUPSZ FNJOHMÐT

7BNPT NPEJGJDBS P BSRVJWP index.html  JOTFSJOEP VNB


SFGFSÐODJBBP$44DSJBEPBOUFSJPSNFOUF
<!-- início do arquivo ... -->
<head>
<!-- tags meta ... -->
<link rel="stylesheet" href="estilos.css">
</head>
<!-- restante do arquivo ... -->

"TBÓEBEP git status TFSÈ


# On branch master
#
# Initial commit
#
# Changes to be committed:

28 3.2 RASTREANDO ARQUIVOS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
# (use "git rm --cached <file>..." to unstage)
#
# new file: estilos.css
# new file: imagens/logo.png
# new file: index.html
#
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in
working directory)
#
# modified: index.html
#

/PUFRVFP index.html DPOUJOVBBQBSFDFOEPDPNPVNOPWP


BSRVJWP SBTUSFBEP OFX GJMF FN $IBOHFT UP CF DPNNJUUFE

JOEJDBOEPRVFFMFFTUÈTFOEPSBTUSFBEPFQSPOUPQBSBTFSHSBWBEP
.BTPCTFSWFRVF PBSRVJWP index.html  BQBSFDF NBJT VNB WF[
TPC$IBOHFTOPUTUBHFEGPSDPNNJU DPNPNPEJGJDBEP NPEJGJFE


*TTP BDPOUFDF QPSRVF  VNB WF[ RVF VN BSRVJWP QBTTB B TFS
SBTUSFBEP QFMP (JU  EFQPJT EF DPMPDÈMP OB ÈSFB EF TUBHF DPN P
DPNBOEP git add  DBEB NVEBOÎB OFTTF BSRVJWP Ï SBTUSFBEB F
UBNCÏNEFWFTFSDPMPDBEBOBÈSFBEFTUBHF

1BSBDPMPDBSNPTBTÞMUJNBTNVEBOÎBTRVFGJ[FNPTOPBSRVJWP
index.html OBÈSFBEFTUBHF EFWFNPTFYFDVUBSOPWBNFOUF

$ git add index.html

%FQPJTEJTTP BPFYFDVUBSNPT git status UFSFNPT


# On branch master
#
# Initial commit
#
# Changes to be committed:
# (use "git rm --cached <file>..." to unstage)
#
# new file: estilos.css

3.2 RASTREANDO ARQUIVOS 29


E-book gerado especialmente para Hugo Hiroshi - [email protected]
# new file: imagens/logo.png
# new file: index.html
#

"HPSB  UBOUP P BSRVJWP PSJHJOBM DPNP BT ÞMUJNBT NVEBOÎBT


FTUÍPQSPOUPTQBSBTFSFNHSBWBEPTOPSFQPTJUØSJP

6NB SFQSFTFOUBÎÍP HSÈGJDB EBT USBOTJÎÜFT FOUSF P EJSFUØSJP EF


USBCBMIPFBÈSFBEFTUBHFTFSJB

'JHVSB3BTUSFBOEPBSRVJWPTFNVEBOÎBTDPN(JU

*HOPSBOEPBSRVJWPT
4VQPOIB RVF UFNPT VN BSRVJWP todo.txt  RVF NBOUFNPT
EVSBOUFPEFTFOWPMWJNFOUP DPNBMJTUBEBTUBSFGBTEPEJB4VQPOIB
UBNCÏN RVF UFNPT VN TVCEJSFUØSJP DIBNBEP tmp  DPN BMHVOT
BSRVJWPTUFNQPSÈSJPTHFSBEPTBPNBOJQVMBSNPTJNBHFOT/ÍPGB[
TFOUJEPNBOUFSPIJTUØSJDPEFBNCPTOP(JU

4F FYFDVUBSNPT git status  P BSRVJWP todo.txt  F P


TVCEJSFUØSJP tmp  TFSÍP NPTUSBEPT DPNP BSRVJWPT BJOEB OÍP
SBTUSFBEPT
# On branch master
#
# Initial commit
#
# Changes to be committed:

30 3.2 RASTREANDO ARQUIVOS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
# (use "git rm --cached <file>..." to unstage)
#
# new file: estilos.css
# new file: imagens/logo.png
# new file: index.html
#
# Untracked files:
# (use "git add <file>..." to include in what will be
committed)
#
# tmp/
# todo.txt

4FSÈ RVF UFSFNPT TFNQSF EF MFNCSBS EF FWJUBS P git add
EFTTFT BSRVJWPT  4F GPS BTTJN  OÍP QPEFSFNPT NBJT VUJMJ[BS git
add . KÈRVFFTTFDPNBOEPSBTUSFJBUPEPTPTBSRVJWPT

1BSB SFTPMWFS JTTP  P (JU UFN VN NFDBOJTNP RVF QFSNJUF


JHOPSBSNPT BSRVJWPT #BTUB DSJBSNPT VN BSRVJWP DIBNBEP
.gitignore  OP EJSFUØSJP QSJODJQBM EP OPTTP QSPKFUP  DPN PT
OPNFTEPTBSRVJWPTRVFRVFSFNPTJHOPSBS

/P OPTTP DBTP  EFWFNPT DSJBS VN BSRVJWP DIBNBEP


.gitignore OPEJSFUØSJP moveis DPNPTFHVJOUFDPOUFÞEP

todo.txt
tmp/

%FTTB NBOFJSB  P BSRVJWP todo.txt  F P TVCEJSFUØSJP tmp


OÍPTFSÍPNPTUSBEPTBPFYFDVUBSNPTPDPNBOEP git status 
# On branch master
#
# Initial commit
#
# Changes to be committed:
# (use "git rm --cached <file>..." to unstage)
#
# new file: estilos.css
# new file: imagens/logo.png

3.2 RASTREANDO ARQUIVOS 31


E-book gerado especialmente para Hugo Hiroshi - [email protected]
# new file: index.html
#
# Untracked files:
# (use "git add <file>..." to include in what will be
committed)
#
# .gitignore

0CTFSWF QPSÏN RVF PBSRVJWP .gitignore  BQBSFDFV DPNP


OÍP SBTUSFBEP ² JNQPSUBOUF RVF FTTF BSRVJWP TFKB SBTUSFBEP
QPSRVF FWPMVJSÈ KVOUP DPN P SFQPTJUØSJP 1PS JTTP  BP DSJBS P
.gitignore  OÍP FTRVFÎB EF BEJDJPOÈMP Ë ÈSFB EF TUBHF DPN P
DPNBOEP
$ git add .gitignore

4F RVJTÏTTFNPT JHOPSBS UPEPT PT BSRVJWPT DPN B FYUFOTÍP


.log QPSFYFNQMP DPMPDBSÓBNPT *.log  OP .gitignore  4F
RVJTÏTTFNPT JHOPSBS UPEPT PT BSRVJWPT .bmp  EP TVCEJSFUØSJP
imagens EFWFSÓBNPTJOTFSJS imagens/*.bmp 

/B QSÈUJDB  RVF UJQP EF BSRVJWPT TÍP DPMPDBEPT OP


.gitignore %FQFOEFEBUFDOPMPHJBVTBEBOPQSPKFUP

&N QSPKFUPT +BWB  BSRVJWPT .class  .jar  F .war  TÍP


FYFNQMPTEFBSRVJWPTRVFEFWFNTFSJHOPSBEPT1BSBQSPKFUPT
3VCZ  JHOPSBSÓBNPT BSRVJWPT .gem  F P EJSFUØSJP pkg  +È
QBSBQSPKFUPT1ZUIPO BSRVJWPT .egg 

)È VN QSPKFUP OP (JU)VC DPN FYFNQMPT EF BSRVJWPT


.gitignore  QBSB EJWFSTBT MJOHVBHFOT EF QSPHSBNBÎÍP F
UFDOPMPHJBTIUUQTHJUIVCDPNHJUIVCHJUJHOPSF

32 3.2 RASTREANDO ARQUIVOS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
 (3"7"/%0 "326*704 /0
3&104*5»3*0
0TBSRVJWPTFBMUFSBÎÜFTRVFGPSBNDPMPDBEPTOBÈSFBEFTUBHF
QPS NFJP EP DPNBOEP git add  BJOEB OÍP GPSBN HSBWBEPT OP
SFQPTJUØSJP "P JOWPDBSNPT P git status  QPEFNPT OPUBS RVF
FTTFT BSRVJWPT FTUÍP QSPOUPT QBSB TFSFN HSBWBEPT $IBOHFT UP CF
DPNNJUUFE

# On branch master
#
# Initial commit
#
# Changes to be committed:
# (use "git rm --cached <file>..." to unstage)
#
# new file: .gitignore
# new file: estilos.css
# new file: imagens/logo.png
# new file: index.html
#

1BSB HSBWBS FTTFT BSRVJWPT F BMUFSBÎÜFT EFGJOJUJWBNFOUF OP


SFQPTJUØSJP EFWFNPTVUJMJ[BSPDPNBOEP git commit 
$ git commit -m "Commit inicial"

0CTFSWF RVF QBTTBNPT VNB NFOTBHFN RVF EFTDSFWF BT


BMUFSBÎÜFT FGFUVBEBT WJB B PQÎÍP -m  4F OÍP QBTTÈTTFNPT FTTB
PQÎÍP  TFSJB BCFSUP VN FEJUPS EF UFYUP QBSB JOGPSNBSNPT B
NFOTBHFN

/P OPTTP DBTP  VTBNPT B NFOTBHFN $PNNJU JOJDJBM ²


JNQPSUBOUF RVF BT NFOTBHFOT EFTDSFWBN EF NBOFJSB TVDJOUB BT
BMUFSBÎÜFT RVF GPSBN FGFUVBEBT %FQPJT EF FYFDVUBEP FTTF
DPNBOEP EFWFSÈBQBSFDFSBMHPDPNP

3.3 GRAVANDO ARQUIVOS NO REPOSITÓRIO 33


E-book gerado especialmente para Hugo Hiroshi - [email protected]
[master (root-commit) 4a4fdf7] Commit inicial
4 files changed, 26 insertions(+)
create mode 100644 .gitignore
create mode 100644 estilos.css
create mode 100644 imagens/logo.png
create mode 100644 index.html

/PUFRVF OBQSJNFJSBMJOIBEBTBÓEBBQSFTFOUBEB ÏFYJCJEPVN


DØEJHPMPHPBOUFTEBNFOTBHFN 4a4fdf7 OPDBTP
&TTFDØEJHP
TFSWF DPNP VN JEFOUJGJDBEPS EP DPNNJU /B WFSEBEF  GPSBN
FYJCJEPTBQFOBTPTQSJNFJSPTEÓHJUPTEFTTFDØEJHP RVFDPOUÏN
DBSBDUFSFTBPUPEP

.BJT FTQFDJGJDBNFOUF  FTTF DØEJHP Ï VN OÞNFSP EF


WFSJGJDBÎÍPEFJOUFHSJEBEFEFEBEPT DIFDLTVN
DSJBEPBQBSUJS
EPDPOUFÞEPEPBSRVJWPVTBOEPBGVOÎÍPEFIBTI4)"1PS
VUJMJ[BS 4)"  Ï SFQSFTFOUBEP QPS VN OÞNFSP IFYBEFDJNBM
EFEÓHJUPT

4FWFSJGJDBSNPTBHPSBPFTUBEPEPSFQPTJUØSJPDPNPDPNBOEP
git status UFSFNPT

# On branch master
nothing to commit, working directory clean

0CTFSWFRVFOÍPIÈOBEBNBJTBTFSDPNJUBEP

34 3.3 GRAVANDO ARQUIVOS NO REPOSITÓRIO


E-book gerado especialmente para Hugo Hiroshi - [email protected]
0UFSNPDPNNJUÏDPNVNFNRVBMRVFSTJTUFNBDPOUSPMBEPS
EF WFSTÍP  F TJHOJGJDB HSBWBS OPWPT BSRVJWPT F BMUFSBÎÜFT FN
BSRVJWPT FYJTUFOUFT FN VN SFQPTJUØSJP &N QPSUVHVÐT  PT
UFSNPTDPNJUBSPVDPNJUBEPTÍPCFNDPSSJRVFJSPT BQFTBSEF
OÍPFYJTUJSFNOPTEJDJPOÈSJPT

3BTUSFBOEPFDPNJUBOEPNVEBOÎBTEFVNBTØWF[
1FSDFCFNPT RVF IBWÓBNPT FTRVFDJEP EF DPMPDBS P UÓUVMP OB
QÈHJOB index.html 7BNPTBMUFSBSPBSRVJWP
<!-- início do arquivo ... -->
<head>
<!-- tags meta e link ... -->
<title>Móveis Ecológicos</title>
</head>
<!-- restante do arquivo ... -->

"MÏN EJTTP  WBNPT EJNJOVJS P UBNBOIP EB QÈHJOB QBSB GJDBS


NFMIPSFNEJTQPTJUJWPTDPNUFMBTQFRVFOBT1BSBJTTP BMUFSBSFNPT
PBSRVJWP estilos.css 
body {
width: 50%;
margin: auto;
}
/* resto do css */

4FFYFDVUBSNPT git status UFSFNPT


# On branch master
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in
working directory)

3.3 GRAVANDO ARQUIVOS NO REPOSITÓRIO 35


E-book gerado especialmente para Hugo Hiroshi - [email protected]
#
# modified: estilos.css
# modified: index.html
#
no changes added to commit (use "git add" and/or
"git commit -a")

/PUFRVFPTBSRVJWPTBQBSFDFNDPNPNPEJGJDBEPT NBTBÈSFB
EF TUBHF BJOEB OÍP DPOUÏN BT NVEBOÎBT FGFUVBEBT $IBOHFT OPU
TUBHFEGPSDPNNJU


1PEFSÓBNPTFGFUVBSP git add  EFTTBT NVEBOÎBT TFHVJEP EP


git commit 1PSÏN ÏQPTTÓWFMSBTUSFBSBTNVEBOÎBTFDPNJUÈMBT
EFVNBWF[DPNBPQÎÍP -a 
$ git commit -a -m "Inserindo titulo e diminuindo tamanho da
pagina"

5FSFNPTDPNPSFTQPTUBEPDPNBOEPBOUFSJPSBMHPDPNP
[master ccff92c] Inserindo titulo e diminuindo tamanho da pagina
2 files changed, 5 insertions(+)

" PQÎÍP -a  EP DPNBOEP git commit  KÈ FGFUVB P


SBTUSFBNFOUP EBT NVEBOÎBT  BEJDJPOBOEPBT Ë ÈSFB EF TUBHF
1PEFSÓBNPT KVOUBS BT PQÎÜFT -a  F -m  VUJMJ[BOEP -am  EB
TFHVJOUFNBOFJSB git commit -am "Inserindo titulo..."

/FTTFQPOUP BTBÓEBEPDPNBOEP git status  JOEJDBSÈ RVF


OÍPIÈNBJTOBEBBTFSDPNJUBEP
# On branch master
nothing to commit, working directory clean

/PWPTBSRVJWPTQSFDJTBNEFHJUBEE>
/PTTP DMJFOUF QFEJV RVF DPMPDÈTTFNPT VNB NFOTBHFN OB
QÈHJOBRVFÏUSPDBEBBVUPNBUJDBNFOUFEFUFNQPTFNUFNQPT

36 3.3 GRAVANDO ARQUIVOS NO REPOSITÓRIO


E-book gerado especialmente para Hugo Hiroshi - [email protected]
1BSBGB[FSJTTP DSJBNPTVNBSRVJWPDIBNBEP principal.js
DPNPTFHVJOUFDPOUFÞEP
var banners =
["Os melhores do Brasil!", "Qualidade e preço baixo!"];
var bannerAtual = 0;

function trocaBanner() {
bannerAtual = (bannerAtual + 1) % 2;
document.querySelector('h2#mensagem').textContent =
banners[bannerAtual];
}

setInterval(trocaBanner, 2000);

1SFDJTBNPTUBNCÏNBEJDJPOBSPTDSJQUBOUFSJPSËOPTTBQÈHJOB
index.html BMÏNEFVNBUBH h2 RVFWBJDPOUFSBNFOTBHFN

<!-- início do arquivo ... -->


<head>
<!-- tags meta, link e title ... -->
<script src="principal.js"></script>
</head>
<body>
<!-- tag h1 ... -->
<h2 id="mensagem"></h2>
<!-- restante do arquivo ... -->

"PFYFDVUBSNPTPDPNBOEP git status UFSFNPTBTBÓEB


# On branch master
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working
directory)
#
# modified: index.html
#
# Untracked files:
# (use "git add <file>..." to include in what will be
committed)
#
# principal.js

3.3 GRAVANDO ARQUIVOS NO REPOSITÓRIO 37


E-book gerado especialmente para Hugo Hiroshi - [email protected]
no changes added to commit (use "git add" and/or
"git commit -a")

0CTFSWF RVF Ï NPTUSBEB B NPEJGJDBÎÍP OP BSRVJWP


index.html FUBNCÏNPOPWPBSRVJWP principal.js 

7BNPTFYFDVUBSPDPNBOEPQBSBSBTUSFBSFDPNJUBSPTBSRVJWPT
EFVNBWF[TØ
git commit -am "Script de troca de banner"

/BTBÓEB UFSFNPT
[master bb229c6] Script de troca de banner
1 file changed, 2 insertions(+)

2VBMTFSÈBSFTQPTUBEP git status 4FSÈ


# On branch master
# Untracked files:
# (use "git add <file>..." to include in what will be
committed)
#
# principal.js
nothing added to commit but untracked files present (use
"git add" to track)

0CTFSWFRVFP git commit DPNBPQÎÍP -a  BEJDJPOPV OP


TUBHF BQFOBT BT NVEBOÎBT EP BSRVJWP RVF KÈ FTUBWB TFOEP
SBTUSFBEP 0 OPWP BSRVJWP  principal.js  OÍP QBTTPV B TFS
SBTUSFBEP

4FNQSF RVF UJWFSNPT VN BSRVJWP OPWP  UFNPT EF VUJMJ[BS P


DPNBOEP git add  QBSB RVF P (JU QBTTF B SBTUSFÈMP 4Ø FOUÍP
QPEFSFNPTDPNJUÈMP7BNPTMÈ
$ git add principal.js

"QØTFYFDVUBSNPTP git status UFSFNPT

38 3.3 GRAVANDO ARQUIVOS NO REPOSITÓRIO


E-book gerado especialmente para Hugo Hiroshi - [email protected]
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# new file: principal.js
#

"HPSBQPEFNPTDPNJUBSPBSRVJWP principal.js 
$ git commit -m "Inserindo arquivo principal.js"

5FSFNPTVNBTBÓEBQBSFDJEBDPN
[master 842d2cf] Inserindo arquivo principal.js
1 file changed, 10 insertions(+)
create mode 100644 principal.js

"PFYFDVUBSNPTPDPNBOEP git status UFSFNPT


# On branch master
nothing to commit, working directory clean

"HPSBTJN5BOUPBBMUFSBÎÍPFN index.html  DPNP P OPWP


BSRVJWP principal.js FTUBSÍPDPNJUBEPTOPSFQPTJUØSJP

"P WJTVBMJ[BSNPT HSBGJDBNFOUF BT USBOTJÎÜFT FOUSF P EJSFUØSJP


EF USBCBMIP  B ÈSFB EF TUBHF F P SFQPTJUØSJP QSPQSJBNFOUF EJUP
UFSÓBNPTBMHPDPNP

'JHVSB(SBWBOEPBSRVJWPTFNVEBOÎBTDPN(JU

3.3 GRAVANDO ARQUIVOS NO REPOSITÓRIO 39


E-book gerado especialmente para Hugo Hiroshi - [email protected]
1BSBTBCFSNBJTQBSBRVFTFSWFBÈSFBEFTUBHF
0 (JU  BP DPOUSÈSJP EB NBJPSJB EPT TJTUFNBT EF DPOUSPMF EF
WFSTÍP  QPTTVJ VNB TFQBSBÎÍP FOUSF SBTUSFBS BT NVEBOÎBT
BEJDJPOBOEPBT OB ÈSFB EF TUBHF DPN P DPNBOEP git add  F
HSBWBSBTNVEBOÎBTOPSFQPTJUØSJP DPNPDPNBOEP git commit 

.BTTFSÈRVFFTTBTFQBSBÎÍPÏÞUJM ²TJN

7BNPTEJ[FSRVFFTUBNPTEFTFOWPMWFOEPVNTJTUFNBRVFUFN
VNNØEVMPEFFTUPRVFFVNEFWFOEBT"PEFTFOWPMWFSVNBOPWB
GVODJPOBMJEBEF NPEJGJDBNPTRVBUSPBSRVJWPT TFOEPRVFEPJTTÍP
EFFTUPRVFFEPJTTÍPEFWFOEBT

1PEFSÓBNPT QSJNFJSBNFOUF HSBWBSBTBMUFSBÎÜFTGFJUBTOPTEPJT


BSRVJWPT EF FTUPRVF  BEJDJPOBOEP BQFOBT FTTFT EPJT Ë TUBHF F
DPNJUBOEPPT DPN VNB NFOTBHFN CFN EFTDSJUJWB %FQPJT
GBSÓBNPT P git add  F git commit  EPT BSRVJWPT EF WFOEBT
UBNCÏNDPNVNBNFOTBHFNCFNEFTDSJUJWB

0V TFKB  FTTB TFQBSBÎÍP FOUSF SBTUSFBS F HSBWBS QFSNJUF RVF BT


NVEBOÎBT RVF GJ[FNPT OP DØEJHP TFKBN BHSVQBEBT EF NBOFJSB
MØHJDB%FTTBGPSNB QPEFNPTNPOUBSDPNNJUTNFOPSFT RVFGBSÍP
NBJTTFOUJEPQPTUFSJPSNFOUFBPSFWJTBSNPTPIJTUØSJDPEPQSPKFUP
F BKVEBSÍP BP NFTDMBSNPT OPTTBT NVEBOÎBT DPN BT EPT PVUSPT
NFNCSPTEPOPTTPUJNF

 7&3*'*$"/%0 0 )*45»3*$0 %0 4&6


3&104*5»3*0
1BSB WFSJGJDBS P IJTUØSJDP EBT NVEBOÎBT HSBWBEBT OP
SFQPTJUØSJP  PV TFKB  PT DPNNJUT FGFUVBEPT  EFWFNPT VTBS P

40 3.4 VERIFICANDO O HISTÓRICO DO SEU REPOSITÓRIO


E-book gerado especialmente para Hugo Hiroshi - [email protected]
DPNBOEP
$ git log

"QØTFYFDVUBSPDPNBOEPBOUFSJPS UFSFNPTBTFHVJOUFTBÓEB
commit 842d2cfc43418109e8f1bbd8ff8b91813f05373c
Author: Fulano da Silva <[email protected]>
Date: Wed Apr 30 14:32:38 2014 -0300

Inserindo arquivo principal.js

commit bb229c6f5bf64f210fa5acb21e52286456e27ac8
Author: Fulano da Silva <[email protected]>
Date: Wed Apr 30 14:24:06 2014 -0300

Script de troca de banner

commit ccff92c4036e50b573ad0a661a32416942da2c76
Author: Fulano da Silva <[email protected]>
Date: Wed Apr 30 14:02:26 2014 -0300

Inserindo titulo e diminuindo tamanho da pagina

commit 4a4fdf77dc2e9e59c4b6a82523ab32dfc81859fc
Author: Fulano da Silva <[email protected]>
Date: Tue Apr 29 12:47:36 2014 -0300

Commit inicial

0CTFSWFRVFGPSBNMJTUBEBTBTNFOTBHFOTEFUPEPTPTDPNNJUT
KVOUPBPDØEJHPDPSSFTQPOEFOUF BVUPSFEBUBIPSBFNRVFGPSBN
FGFUVBEPT

4F RVJTFSNPT NPTUSBS BQFOBT PT EPJT ÞMUJNPT DPNNJUT


EFWFNPTVUJMJ[BSBPQÎÍP -n 
$ git log -n 2

"QØTFYFDVUBSPDPNBOEPBOUFSJPS UFSFNPTBTFHVJOUFTBÓEB
commit 842d2cfc43418109e8f1bbd8ff8b91813f05373c

3.4 VERIFICANDO O HISTÓRICO DO SEU REPOSITÓRIO 41


E-book gerado especialmente para Hugo Hiroshi - [email protected]
Author: Fulano da Silva <[email protected]>
Date: Wed Apr 30 14:32:38 2014 -0300

Inserindo arquivo principal.js

commit bb229c6f5bf64f210fa5acb21e52286456e27ac8
Author: Fulano da Silva <[email protected]>
Date: Wed Apr 30 14:24:06 2014 -0300

Script de troca de banner

4FRVJTFSNPTVNSFTVNPCFNDPODJTPEPTDPNNJUTEPOPTTP
QSPKFUP QPEFNPTVTBSBPQÎÍP --oneline 
$ git log --oneline

4FSÈBQSFTFOUBEPBMHPTFNFMIBOUFB
842d2cf Inserindo arquivo principal.js
bb229c6 Script de troca de banner
ccff92c Inserindo titulo e diminuindo tamanho da pagina
4a4fdf7 Commit inicial

1PEFNPT NPTUSBS VN SFTVNP EPT BSRVJWPT BMUFSBEPT  DPN P


OÞNFSPEFMJOIBTBEJDJPOBEBTFSFNPWJEBT QPSNFJPEBPQÎÍP --
stat 

$ git log --stat

"TBÓEBTFSÈBMHPDPNP
commit 842d2cfc43418109e8f1bbd8ff8b91813f05373c
Author: Fulano da Silva <[email protected]>
Date: Wed Apr 30 14:32:38 2014 -0300

Inserindo arquivo principal.js

principal.js | 10 ++++++++++
1 file changed, 10 insertions(+)

commit bb229c6f5bf64f210fa5acb21e52286456e27ac8
Author: Fulano da Silva <[email protected]>

42 3.4 VERIFICANDO O HISTÓRICO DO SEU REPOSITÓRIO


E-book gerado especialmente para Hugo Hiroshi - [email protected]
Date: Wed Apr 30 14:24:06 2014 -0300

Script de troca de banner

index.html | 2 ++
1 file changed, 2 insertions(+)

commit ccff92c4036e50b573ad0a661a32416942da2c76
Author: Fulano da Silva <[email protected]>
Date: Wed Apr 30 14:02:26 2014 -0300

Inserindo titulo e diminuindo tamanho da pagina


:

1PEFNPT PCTFSWBS RVF GPSBN NPTUSBEPT PT BSRVJWPT


NPEJGJDBEPTFPOÞNFSPEFJOTFSÎÜFT

/PUFUBNCÏNRVFPÞMUJNPDBSBDUFSFGPJVNEPJTQPOUPT :

"P BQFSUBSNPT B UFDMB Enter  TFSÍP NPTUSBEPT PT SFTVMUBEPT
SFTUBOUFT
estilos.css | 4 ++++
index.html | 1 +
2 files changed, 5 insertions(+)

commit 4a4fdf77dc2e9e59c4b6a82523ab32dfc81859fc
Author: Fulano da Silva <[email protected]>
Date: Tue Apr 29 12:47:36 2014 -0300

Commit inicial

.gitignore | 3 +++
estilos.css | 6 ++++++
imagens/logo.png | Bin 0 -> 15128 bytes
index.html | 20 ++++++++++++++++++++
4 files changed, 29 insertions(+)
(END)

1BSBTBJSNPTEPTSFTVMUBEPTEP git log  EFWFNPT BQFSUBS B


UFDMB q 

1PEFNPTUBNCÏNDPNCJOBSBTWÈSJBTPQÎÜFTEPDPNBOEP git

3.4 VERIFICANDO O HISTÓRICO DO SEU REPOSITÓRIO 43


E-book gerado especialmente para Hugo Hiroshi - [email protected]
log  1PS FYFNQMP  QBSB NPTUSBS VN SFTVNP EBT BMUFSBÎÜFT EPT
ÞMUJNPTEPJTDPNNJUT
$ git log -n 2 --oneline --stat

5FSFNPTBTFHVJOUFTBÓEB
842d2cf Inserindo arquivo principal.js
principal.js | 10 ++++++++++
1 file changed, 10 insertions(+)
bb229c6 Script de troca de banner
index.html | 2 ++
1 file changed, 2 insertions(+)

2VBM B EJGFSFOÎB FOUSF PT DPNBOEPT git status  F P git


log

0 git status  FYJCF BSRVJWPT RVF FTUÍP GPSB EB ÈSFB EF


TUBHF  QSPOUPT QBSB TFSFN BEJDJPOBEPT  F BSRVJWPT RVF FTUÍP
EFOUSPEBÈSFBEFTUBHF QSPOUPTQBSBTFSFNDPNJUBEPT

+ÈP git log  FYJCF P IJTUØSJDP EBT NVEBOÎBT FGFUJWBNFOUF


HSBWBEBTFNVNSFQPTJUØSJP0VTFKB PTDPNNJUTFGFUVBEPT

 7&3*'*$"/%0 .6%"/±"4 /04


"326*7043"453&"%04
1FSDFCFNPT VN CVH OP OPTTP DØEJHP BP BCSJSNPT B QÈHJOB
OÍPÏNPTUSBEPOFOIVNCBOOFS1BSBDPSSJHJS EFWFNPTJOWPDBSB
GVOÎÍP trocaBanner  OP FWFOUP onload  EB QÈHJOB  GB[FOEP B
TFHVJOUFNVEBOÎBOPBSRVJWP index.html 
<!-- início do arquivo ... -->

44 3.5 VERIFICANDO MUDANÇAS NOS ARQUIVOS RASTREADOS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
<body onload="trocaBanner();">
<!-- restante do arquivo ... -->

%FQPJT EF GB[FS FTTB BMUFSBÎÍP  BP JOWPDBSNPT git status


UFSFNPT
# On branch master
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working
directory)
#
# modified: index.html
#
no changes added to commit (use "git add" and/or
"git commit -a")

5VEP DPOGPSNF P FTQFSBEP ² JOGPSNBEP RVF P BSRVJWP


index.html TPGSFVVNBNPEJGJDBÎÍP

7FSJGJDBOEPNVEBOÎBTBJOEBOÍPSBTUSFBEBT
4F RVJTFSNPT SFWJTBS B NPEJGJDBÎÍP FGFUVBEB  WFSJGJDBOEP BT
EJGFSFOÎBT FOUSF P BSRVJWP BMUFSBEP F P RVF GPJ DPNJUBEP
BOUFSJPSNFOUF QPEFNPTVTBSPDPNBOEP
$ git diff

4FSÈNPTUSBEPBMHPDPNP
diff --git a/index.html b/index.html
index b1115c7..4786946 100644
--- a/index.html
+++ b/index.html
@@ -8,7 +8,7 @@
<title>Móveis Ecológicos</title>
<script src="principal.js"></script>
</head>
- <body>
+ <body onload="trocaBanner();">
<h1>Móveis Ecológicos S. A.</h1>

3.5 VERIFICANDO MUDANÇAS NOS ARQUIVOS RASTREADOS 45


E-book gerado especialmente para Hugo Hiroshi - [email protected]
<h2 id="mensagem"></h2>

0CTFSWFRVFGPJNPTUSBEBFYBUBNFOUFBNVEBOÎBRVFGJ[FNPT
BOUFSJPSNFOUF B USPDB EF <body>  QPS <body
onload="trocaBanner();"> 

2VBOEP UJWFSNPT BMUFSBÎÜFT BJOEB OÍP SBTUSFBEBT FN NBJT EF


VNBSRVJWPFRVJTFSNPTWFSJGJDBSPRVFNVEBNPTFNVNBSRVJWP
FTQFDÓGJDP  CBTUB QBTTBSNPT P OPNF EFTTF BSRVJWP DPNP
QBSÉNFUSP1PSFYFNQMP QBSBWFSJGJDBSNPTBTNVEBOÎBTBQFOBTOP
BSRVJWP index.html GBSÓBNPT git diff index.html 

0 git diff OÍPQPEFSÈTFSVTBEPQBSBBSRVJWPTOPWPT RVF


BJOEBOÍPFTUÍPTFOEPSBTUSFBEPTQFMP(JU PVTFKB RVFBJOEB
OÍPUJWFSBNPQSJNFJSP git add FYFDVUBEP


7FSJGJDBOEPNVEBOÎBTSBTUSFBEBT
7BNPTBEJDJPOBSBTNVEBOÎBTRVFGJ[FNPTËÈSFBEFTUBHFDPN
PDPNBOEP git add index.html 

4F FYFDVUBSNPT git diff  OPWBNFOUF  OÍP TFSÈ NPTUSBEB


OFOIVNB TBÓEB 0 DPNBOEP git diff  RVBOEP VTBEP TFN
QBSÉNFUSPT  NPTUSB B EJGFSFOÎB FOUSF PT BSRVJWPT OP EJSFUØSJP EF
USBCBMIP F B ÈSFB EF TUBHF 1PSUBOUP  TFSWF BQFOBT QBSB FYJCJS BT
NVEBOÎBTBJOEBOÍPSBTUSFBEBT

² QPTTÓWFM NPTUSBS BT EJGFSFOÎBT FOUSF PT BSRVJWPT OB ÈSFB EF


TUBHF F B ÞMUJNB WFSTÍP RVF GPJ DPNJUBEB  VUJMJ[BOEP B PQÎÍP --
staged 

46 3.5 VERIFICANDO MUDANÇAS NOS ARQUIVOS RASTREADOS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
$ git diff --staged

4FSÈ FYJCJEB VNB TBÓEB FYBUBNFOUF JHVBM Ë BOUFSJPS  KÈ RVF B


BMUFSBÎÍP BQFOBT QBTTPV QBSB B ÈSFB EF TUBHF  NBT DPOUJOVB B
NFTNB
diff --git a/index.html b/index.html
index b1115c7..4786946 100644
--- a/index.html
+++ b/index.html
@@ -8,7 +8,7 @@
<title>Móveis Ecológicos</title>
<script src="principal.js"></script>
</head>
- <body>
+ <body onload="trocaBanner();">
<h1>Móveis Ecológicos S. A.</h1>
<h2 id="mensagem"></h2>

"OUFT EB WFSTÍP  EP (JU  TØ IBWJB B PQÎÍP --cached
RVFUFNPNFTNPFGFJUPEBPQÎÍP --staged 

7FSJGJDBOEPNVEBOÎBTSBTUSFBEBTFOÍPSBTUSFBEBTBP
NFTNPUFNQP
7BNPTEJNJOVJSPUFNQPEFUSPDBEPCBOOFSQBSBVNTFHVOEP
BMUFSBOEPPBSRVJWP principal.js 
//inicio do arquivo...
setInterval(trocaBanner, 1000);

/FTTFQPOUP UFNPTEVBTBMUFSBÎÜFT6NBEFMBTGPJOPBSRVJWP
index.html  RVF KÈ FTUÈ OB ÈSFB EF TUBHF 5BNCÏN UFNPT VNB
BMUFSBÎÍP OP BSRVJWP principal.js  BJOEB OÍP SBTUSFBEB *TTP
QPEFTFSWFSJGJDBEPDPNPDPNBOEP git status 

3.5 VERIFICANDO MUDANÇAS NOS ARQUIVOS RASTREADOS 47


E-book gerado especialmente para Hugo Hiroshi - [email protected]
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: index.html
#
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working
directory)
#
# modified: principal.js
#

4F FYFDVUBSNPT P DPNBOEP git diff  WFSFNPT BQFOBT B


BMUFSBÎÍPOPBSRVJWP principal.js 
diff --git a/principal.js b/principal.js
index 5d114bd..696870a 100644
--- a/principal.js
+++ b/principal.js
@@ -6,5 +6,5 @@ function trocaBanner() {
document.querySelector('h2#mensagem').textContent =
banners[bannerAtual];
}

-setInterval(trocaBanner, 2000);
+setInterval(trocaBanner, 1000);

+ÈBPFYFDVUBSNPTPDPNBOEP git diff --staged WFSFNPT


BQFOBT B BMUFSBÎÍP OP BSRVJWP index.html  RVF KÈ WFSJGJDBNPT
BOUFSJPSNFOUF4FSÈRVFÏQPTTÓWFMFYJCJSUBOUPBTBMUFSBÎÜFTGPSBEB
ÈSFBEFTUBHFDPNPBTEFEFOUSP

4JN 1BSB JTTP  QSFDJTBNPT EFTDPCSJS P DØEJHP EP ÞMUJNP


DPNNJU1PEFNPTGB[FSJTTPDPNPDPNBOEP git log -n 1 --
oneline 5FSFNPTBTBÓEB

842d2cf Inserindo arquivo principal.js

$PN P DØEJHP EP ÞMUJNP DPNNJU FN NÍPT  BHPSB QPEFNPT

48 3.5 VERIFICANDO MUDANÇAS NOS ARQUIVOS RASTREADOS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
NPTUSBSBTBMUFSBÎÜFTEFOUSPFGPSBEBTUBHF VTBOEPPDPNBOEP
$ git diff 842d2cf

4FSÍPFYJCJEBTBNCBTBTBMUFSBÎÜFT
diff --git a/index.html b/index.html
index b1115c7..4786946 100644
--- a/index.html
+++ b/index.html
@@ -8,7 +8,7 @@
<title>Móveis Ecológicos</title>
<script src="principal.js"></script>
</head>
- <body>
+ <body onload="trocaBanner();">
<h1>Móveis Ecológicos S. A.</h1>
<h2 id="mensagem"></h2>
diff --git a/principal.js b/principal.js
index 643ad98..696870a 100644
--- a/principal.js
+++ b/principal.js
@@ -6,5 +6,5 @@ function trocaBanner() {
document.querySelector('h2#mensagem').textContent =
banners[bannerAtual];
}

-setInterval(trocaBanner, 2000);
+setInterval(trocaBanner, 1000);
:

$PNP P SFTVMUBEP Ï FYUFOTP  TFSÈ NPTUSBEP P DBSBDUFSF EPJT


QPOUPT :
 1BSB JSNPT QBSB PT QSØYJNPT SFTVMUBEPT  EFWFNPT
QSFTTJPOBS B UFDMB Enter  1BSB TBJSNPT  EFWFNPT BQFSUBS B UFDMB
q 

3.5 VERIFICANDO MUDANÇAS NOS ARQUIVOS RASTREADOS 49


E-book gerado especialmente para Hugo Hiroshi - [email protected]
/POPTTPDBTP UFSÓBNPTBNFTNBTBÓEBBOUFSJPS RVFNPTUSB
BT BMUFSBÎÜFT EFOUSP F GPSB EP TUBHF  VUJMJ[BOEP P DPNBOEP
git diff HEAD  *TTP BDPOUFDF QPSRVF  OP OPTTP DBTP
HEAD FTUÈBQPOUBEPQBSBPÞMUJNPDPNNJUFGFUVBEP1PSÏN
OÍP Ï TFNQSF BTTJN  KÈ RVF P HEAD  QPEF BQPOUBS QBSB
DPNNJUTBOUFSJPSFT

7FSJGJDBOEPNVEBOÎBTKÈDPNJUBEBT
7BNPTDPNJUBSOPTTBT NPEJGJDBÎÜFTFN index.html  DPN P
DPNBOEP git commit -m "Banner ao abrir pagina"  4FSÈ
FYJCJEPBMHPDPNP
[master 2d04ca8] Banner ao abrir a pagina
1 file changed, 1 insertion(+), 1 deletion(-)

5BNCÏNQSFDJTBNPTDPNJUBSBTBMUFSBÎÜFTFN principal.js
RVFBJOEBOÍPFTUÈOBÈSFBEFTUBHF1BSBJTTP VTBSFNPTBPQÎÍP -
a  git commit -am "Diminuindo intervalo de troca de
banner" 5FSFNPTOBTBÓEBBMHPDPNP

[master 8aa07bd] Diminuindo intervalo de troca de banner


1 file changed, 1 insertion(+), 1 deletion(-)

&OUÍP  WBNPT NPTUSBS PT USÐT ÞMUJNPT DPNNJUT EF NBOFJSB


DPODJTB QPS NFJP EP DPNBOEP git log -n 3 --oneline  "
TBÓEBTFSÈTFNFMIBOUFB
8aa07bd Diminuindo intervalo de troca de banner
2d04ca8 Banner ao abrir a pagina
842d2cf Inserindo arquivo principal.js

"HPSBOÍPUFNPTOFOIVNBBMUFSBÎÍPOÍPDPNJUBEB6GB

50 3.5 VERIFICANDO MUDANÇAS NOS ARQUIVOS RASTREADOS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
1PEFNPT VTBS P DPNBOEP git diff  QBSB WFSJGJDBS BT
EJGFSFOÎBTFOUSFEPJTDPNNJUTFTQFDÓGJDPT1BSBDPNQBSBSPRVFGPJ
BMUFSBEP OP OPTTP ÞMUJNP DPNNJU FN SFMBÎÍP BPT EPJT BOUFSJPSFT
EFWFNPT VUJMJ[BS P git diff  QBTTBOEP PT DØEJHPT EFTTFT
DPNNJUT
$ git diff 842d2cf..8aa07bd

0CTFSWF RVF QBTTBNPT P DØEJHP EPT DPNNJUT TFQBSBEPT QPS


QPOUPQPOUP ..
1PEFNPTMFSPDPNBEPBOUFSJPSDPNPNPTUSF
BT NVEBOÎBT FGFUVBEBT B QBSUJS EP DPNNJU EDG BUÏ P DPNNJU
BBCE

" SFTQPTUB EFTTF DPNBOEP NPTUSBSÈ BT BMUFSBÎÜFT RVF


BDBCBNPTEFHSBWBSOPSFQPTJUØSJP
diff --git a/index.html b/index.html
index b1115c7..4786946 100644
--- a/index.html
+++ b/index.html
@@ -8,7 +8,7 @@
<title>Móveis Ecológicos</title>
<script src="principal.js"></script>
</head>
- <body>
+ <body onload="trocaBanner();">
<h1>Móveis Ecológicos S. A.</h1>
<h2 id="mensagem"></h2>
diff --git a/principal.js b/principal.js
index 5d114bd..696870a 100644
--- a/principal.js
+++ b/principal.js
@@ -6,5 +6,5 @@ function trocaBanner() {
document.querySelector('h2#mensagem').textContent =
banners[bannerAtual];
}

-setInterval(trocaBanner, 2000);
+setInterval(trocaBanner, 1000);
:

3.5 VERIFICANDO MUDANÇAS NOS ARQUIVOS RASTREADOS 51


E-book gerado especialmente para Hugo Hiroshi - [email protected]
1PEFSÓBNPTPCUFSBNFTNBTBÓEBQPSNFJPEPDPNBOEP
$ git diff 8aa07bd~2

0 DPNBOEP BOUFSJPS FYJCF BT NVEBOÎBT OPT BSRVJWPT EP


DPNNJU EF DØEJHP 8aa07bd  FN SFMBÎÍP BPT EPJT DPNNJUT GFJUPT
JNFEJBUBNFOUF BOUFT 0 OÞNFSP EFQPJT EP ~  JOEJDB RVBOUPT
DPNNJUT BOUFSJPSFT EFWFN TFS DPOTJEFSBEPT OB DPNQBSBÎÍP /P
OPTTPDBTP GPSBNEPJT

"QFTBS EF BQSFTFOUBSFN B NFTNB TBÓEB OP OPTTP DBTP  PT


QBSÉNFUSPT 842d2cf..8aa07bd  F 8aa07bd``~``2  OÍP TÍP
FYBUBNFOUFFRVJWBMFOUFT

4F IPVWFTTF BMHVNB NPEJGJDBÎÍP BJOEB OÍP DPNJUBEB GPSB PV


EFOUSP EB ÈSFB EF TUBHF  BT MJOIBT BMUFSBEBT UBNCÏN TFSJBN
NPTUSBEBTOBSFTQPTUBEPDPNBOEP git diff 8aa07bd``~``2 

+È P DPNBOEP git diff 842d2cf..8aa07bd  OÍP FYJCF


NPEJGJDBÎÜFT BJOEB OÍP DPNJUBEBT  NBT BQFOBT BT NVEBOÎBT RVF
BDPOUFDFSBNFOUSFPTEPJTDPNNJUTFTQFDJGJDBEPT

0DPNBOEP git status  MJTUB PT BSRVJWPT NPEJGJDBEPT F P


DPOUFÞEPEBÈSFBEFTUBHF+ÈPDPNBOEP git diff  NPTUSB
EFUBMIBEBNFOUF RVBJT GPSBN FTTBT NPEJGJDBÎÜFT  BMÏN EF
QFSNJUJSWFSJGJDBSNVEBOÎBTFOUSFEPJTDPNNJUT

 3&.07&/%0 "326*704 %0


3&104*5»3*0

52 3.6 REMOVENDO ARQUIVOS DO REPOSITÓRIO


E-book gerado especialmente para Hugo Hiroshi - [email protected]
7BNPTEJ[FSRVFDSJBNPTVNBSRVJWP produtos.html DPNP
TFHVJOUFDPOUFÞEP
<html>
<body>
<ul>
<li>Móveis de garrafas PET</li>
<li>Móveis de latinhas de alumínio</li>
<li>Móveis de papelão</li>
</ul>
</body>
</html>

&OUÍP  JOGPSNBNPT BP (JU RVF RVFSFNPT SBTUSFÈMP WJB P


DPNBOEP git add produtos.html  %FQPJT  HSBWBNPT P
DPOUFÞEPEPBSRVJWPOPSFQPTJUØSJPDPNPDPNBOEP git commit
-m "Página de produtos" 

.BT BDBCBNPT QFSDFCFOEP RVF SFQMJDBNPT P DPOUFÞEP EP


BSRVJWP index.html  F  QPS JTTP  HPTUBSÓBNPT EF SFNPWFS P
BSRVJWP produtos.html 

1PSÏN OÍPCBTUB EFMFUBSNPTP produtos.html  1SFDJTBNPT


EFMFUÈMPFBEJDJPOBSBEFMFÎÍPOBTUBHF QBSBTØFOUÍPFGFUVBSNPT
VN DPNNJU OP SFQPTJUØSJP " SFNPÎÍP EP BSRVJWP F BEJÎÍP OB
TUBHFQPEFNTFSSFBMJ[BEBTEFVNBWF[TØQFMPDPNBOEP
$ git rm produtos.html

%FQPJTEPDPNBOEPBOUFSJPS PBSRVJWP produtos.html OÍP


FYJTUJSÈNBJT4FFYFDVUBSNPT git status UFSFNPT
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# deleted: produtos.html
#

3.6 REMOVENDO ARQUIVOS DO REPOSITÓRIO 53


E-book gerado especialmente para Hugo Hiroshi - [email protected]
0CTFSWFRVFBEFMFÎÍPEF produtos.html  KÈ FTUÈ OB ÈSFB EF
TUBHF QSPOUBQBSBTFSDPNJUBEBDPNPDPNBOEP git commit -m
"Removendo página de produtos" 4FKÈUJWÏTTFNPTSFNPWJEPP
BSRVJWP produtos.html  BP FYFDVUBSNPT git rm
produtos.html  B EFMFÎÍP EP BSRVJWP TFSJB DPMPDBEB OB ÈSFB EF
TUBHF

6NB PVUSB NBOFJSB EF BEJDJPOBS B EFMFÎÍP EF VN BSRVJWP Ë


ÈSFBEFTUBHFTFSJBFYFDVUBSPDPNBOEP git add 1PSÏN FTUFOÍP
QFSNJUFPVTPFNBSRVJWPTSFNPWJEPT BOÍPTFSRVFTFKBVUJMJ[BEB
BPQÎÍP --all 

"EJDJPOBOEP B SFNPÎÍP EF BSRVJWPT BP OPTTP HSÈGJDP


UFSÓBNPT

'JHVSB3FNPWFOEPBSRVJWPTDPN(JU

54 3.6 REMOVENDO ARQUIVOS DO REPOSITÓRIO


E-book gerado especialmente para Hugo Hiroshi - [email protected]
6N EFUBMIF JNQPSUBOUF Ï TBCFS RVF  BQFTBS EF P BSRVJWP UFS
TJEP SFNPWJEP  TFV DPOUFÞEP GJDB HSBWBEP OP IJTUØSJDP EP
SFQPTJUØSJP %FTTB NBOFJSB  Ï QPTTÓWFM PCUFSNPT RVBMRVFS
BSRVJWPRVFKÈFYJTUJVFNOPTTPSFQPTJUØSJP

1PSÏN TFQPSEFTDVJEPDPNJUBSNPTBMHVNBSRVJWPHSBOEFF
EFQPJT EFMFUÈMP  OPTTP SFQPTJUØSJP OÍP EJNJOVJSÈ EF
UBNBOIP KÈRVFPIJTUØSJDPTFSÈNBOUJEP

&YJTUFN GFSSBNFOUBT QBSB FYQVSHBS BSRVJWPT HSBOEFT EP


IJTUØSJDP  DPNP P #'( 3FQP$MFBOFS
IUUQSUZMFZHJUIVCJPCGHSFQPDMFBOFS


3&/0.&"/%0&.07&/%0"326*704

3FOPNFBOEPBSRVJWPT
1BSBNBOUFSPQBESÍPEFOPNFODMBUVSB SFTPMWFNPTNPEJGJDBS
POPNFEPBSRVJWP estilos.css QBSB principal.css 

1BSB GB[FS JTTP  UFSÓBNPT EF DSJBS P OPWP BSRVJWP  DPQJBS TFV
DPOUFÞEP  SFNPWFS P BSRVJWP BOUJHP  BEJDJPOBOEP UBOUP P OPWP
BSRVJWPDPNPBEFMFÎÍPEPBSRVJWPBOUJHPOBÈSFBEFTUBHF

#BTUBOUFUSBCBMIP OÍP "JOEBCFNRVFFTTFUSBCBMIPUPEPQPEF


TFSQPVQBEPDPNPDPNBOEP
$ git mv estilos.css principal.css

4FFYFDVUBSNPTPDPNBOEP git status UFSFNPT

3.7 RENOMEANDO E MOVENDO ARQUIVOS 55


E-book gerado especialmente para Hugo Hiroshi - [email protected]
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# renamed: estilos.css -> principal.css
#

1PEFNPTPCTFSWBSRVFPBSRVJWPBQBSFDFDPNPSFOPNFBEPOB
ÈSFBEFTUBHFFQSPOUPQBSBTFSDPNJUBEP& DMBSP TFPCTFSWBSNPT
OP EJSFUØSJP EP OPTTP SFQPTJUØSJP  P BSRVJWP GPJ SFBMNFOUF
SFOPNFBEP

² JOUFSFTTBOUF TBCFS RVF  TF UJWÏTTFNPT SFOPNFBEP P BSRVJWP


EB NBOFJSB NBJT USBCBMIPTB  P (JU EFUFDUBSJB P OPTTP PCKFUJWP
EFQPJT RVF UJWÏTTFNPT FGFUVBEPT UPEPT PT DPNBOEPT OFDFTTÈSJPT
*TTPBDPOUFDFQPSRVFP(JUSBTUSFJBPDPOUFÞEPEPT BSRVJWPT  OÍP
BQFOBTPOPNF

"OUFT EF DPOUJOVBSNPT  QSFDJTBNPT BUVBMJ[BS P OPNF EP


BSRVJWP$44FN index.html 
<!-- início do arquivo ... -->
<head>
<!-- tags meta ... -->
<link rel="stylesheet" href="principal.css">
<!-- tags title e script ... -->
</head>
<!-- restante do arquivo ... -->

'FJUBT BT BMUFSBÎÜFT  QPEFNPT HSBWÈMBT OP SFQPTJUØSJP DPN P


DPNBOEP git commit -am "Renomeando CSS"  /B TBÓEB  EFWF
BQBSFDFS
[master 27ffd5e] Renomeando CSS
2 files changed, 1 insertion(+), 1 deletion(-)
rename estilos.css => principal.css (100%)

1SPOUP"SRVJWPSFOPNFBEP

56 3.7 RENOMEANDO E MOVENDO ARQUIVOS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
.PWFOEPBSRVJWPT
& TF RVJTFSNPT NPWFS P BSRVJWP principal.js  QBSB VN
TVCEJSFUØSJPDIBNBEP js

1SJNFJSBNFOUF EFWFNPTDSJBSPEJSFUØSJP js 

%FQPJT EFWFSÓBNPTDSJBS VNBSRVJWP principal.js  EFOUSP


EFTTF OPWP EJSFUØSJP  DPQJBS PT DPOUFÞEPT EP BSRVJWP BOUFSJPS F
BEJDJPOBSPOPWPEJSFUØSJPËÈSFBEFTUBHF'FJUPJTTP QSFDJTBSÓBNPT
SFNPWFSPBSRVJWPBUVBM BEJDJPOBOEPBSFNPÎÍPËTUBHF4ØFOUÍP
QPEFSÓBNPTDPNJUBSBTBMUFSBÎÜFT

5PEP FTTF USBCBMIP UBNCÏN QPEF TFS QPVQBEP QFMP DPNBOEP


git mv 

$ git mv principal.js js/principal.js

"UFOÎÍP Ï JNQPSUBOUF RVF P EJSFUØSJP js  KÈ UFOIB TJEP


DSJBEP

4FFYFDVUBSNPTPDPNBOEP git status UFSFNPT


# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# renamed: principal.js -> js/principal.js
#

/PUF RVF P BSRVJWP principal.js  GPJ EFTDSJUP DPNP


SFOPNFBEP QBSB P OPWP BSRVJWP  RVF FTUÈ EFOUSP EP TVCEJSFUØSJP
js  1BSB P (JU  OÍP IÈ EJGFSFOÎB FOUSF VN BSRVJWP NPWJEP PV
SFOPNFBEP /P GJN EBT DPOUBT  BRVFMF DPOUFÞEP P RVF Ï
FGFUJWBNFOUFSBTUSFBEP
NVEPVEFMPDBM

3.7 RENOMEANDO E MOVENDO ARQUIVOS 57


E-book gerado especialmente para Hugo Hiroshi - [email protected]
7BNPTBUVBMJ[BSPBSRVJWP index.html  QBSB BQPOUBS QBSB B
MPDBMJ[BÎÍPDPSSFUBEPBSRVJWP principal.js 
<!-- início do arquivo ... -->
<head>
<!-- tags meta, link e title ... -->
<script src="js/principal.js"></script>
</head>
<!-- restante do arquivo ... -->

&OUÍP DPNJUBSBTBMUFSBÎÜFTDPN git commit -am "Movendo


principal.js" /BTBÓEB EFWFBQBSFDFS

[master 3dd877f] Movendo principal.js


2 files changed, 1 insertion(+), 1 deletion(-)
rename principal.js => js/principal.js (100%)

1SPOUP"SRVJWPNPWJEP

*ODMVJOEP B NPWJNFOUBÎÍP EF BSRVJWPT OB OPTTB WJTVBMJ[BÎÍP


GJDBSÓBNPTDPN

58 3.7 RENOMEANDO E MOVENDO ARQUIVOS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB3FOPNFBOEPFNPWFOEPBSRVJWPTDPN(JU

%&4'";&/%0.6%"/±"4

%FTGB[FOEPNVEBOÎBTOÍPSBTUSFBEBT
7BNPT EJ[FS RVF P EPOP EB FNQSFTB .ØWFJT 4 " MJHPV EF
NBESVHBEB EFQPJT EF UPNBS VNBT F PVUSBT  QFEJOEP QBSB
DPMPDBSNPTOBQÈHJOBQSJODJQBMVNUFYUPVNUBOUPQFDVMJBS

1BSBBUFOEÐMP FEJUBNPTPBSRVJWP index.html DPMPDBOEPP


TFHVJOUFDPOUFÞEPOPGJNEPBSRVJWP
<!-- inicio do arquivo -->
<p>Móveis baratos pra c*&%$#@!</p>
</body>
</html>

'J[FNPT B BMUFSBÎÍP TFN NVJUB DPOWJDÎÍP 1PS JTTP  OÍP B

3.8 DESFAZENDO MUDANÇAS 59


E-book gerado especialmente para Hugo Hiroshi - [email protected]
BEJDJPOBNPT OB ÈSFB EF TUBHF " SFTQPTUB EF VN git status
TFSJB
# On branch master
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working
directory)
#
# modified: index.html
#
no changes added to commit (use "git add" and/or
"git commit -a")

-PHPEFNBOIÍ PEPOPEBFNQSFTBMJHBBSSFQFOEJEP QFEJOEP


QBSB EFTGB[FSNPT BT BMUFSBÎÜFT $PNP QPEFNPT GB[FS EF NBOFJSB
GÈDJM

%FWFNPTFYFDVUBSPTFHVJOUFDPNBOEP
$ git checkout -- index.html

0 DPNBOEP git checkout  EFTGB[ BT BMUFSBÎÜFT BJOEB OÍP


SBTUSFBEBT PVTFKB RVFBJOEBOÍPFTUÍPOBÈSFBEFTUBHF WPMUBOEP
BPDPOUFÞEPBOUFSJPSEPBSRVJWP

"QØTVN git status UFSÓBNPT


# On branch master
nothing to commit, working directory clean

"P WFSJGJDBSNPT P DPOUFÞEP EP BSRVJWP index.html


QPEFNPT DPOTUBUBS RVF B OPTTB NVEBOÎB GPJ EFTGFJUB F P BSRVJWP
GJDPVDPNPDPOUFÞEPPSJHJOBM DPOGPSNFPÞMUJNPDPNNJU

60 3.8 DESFAZENDO MUDANÇAS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
$BTPIBKBBMHVNBNVEBOÎBKÈSBTUSFBEBOPBSRVJWP EFOUSPEB
ÈSFB EF TUBHF  BP FYFDVUBSNPT P DPNBOEP git checkout
BQFOBTBTBMUFSBÎÜFTJOEFTFKBEBT GPSBEBTUBHF TFSÍPEFTGFJUBT
"T NVEBOÎBT RVF KÈ FTUBWBN OB TUBHF QFSNBOFDFSÍP 4FSÍP
EFTGFJUBT BQFOBT BT BMUFSBÎÜFT RVF BJOEB OÍP UJOIBN TJEP
SBTUSFBEBT

&TFBQBHBSNPTBMHVNBSRVJWPTFNRVFSFS .FEP%FTFTQFSP

7BNPT EJ[FS RVF BQBHBNPT P BSRVJWP index.html  "P


FYFDVUBSNPTPDPNBOEP git status UFSÓBNPT
# On branch master
# Changes not staged for commit:
# (use "git add/rm <file>..."to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working
directory)
#
# deleted: index.html
#
no changes added to commit (use "git add" and/or
"git commit -a")

2VFNQPEFSÈOPTBKVEBS 0(JU ÏDMBSP

1PEFNPT VTBS P DPNBOEP git checkout  QBSB SFDVQFSBS


BSRVJWPTSFNPWJEPTBDJEFOUBMNFOUF
$ git checkout -- index.html

1SPOUP"SRVJWPSFDVQFSBEP

%FTGB[FOEPNVEBOÎBTKÈSBTUSFBEBT

3.8 DESFAZENDO MUDANÇAS 61


E-book gerado especialmente para Hugo Hiroshi - [email protected]
& TF KÈ UJWFSNPT SBTUSFBEP VNB NVEBOÎB JOEFTFKBEB OP
BSRVJWP $PNPWPMUBSBUSÈT

7BNPT EJ[FS RVF GJ[FNPT B TFHVJOUF NPEJGJDBÎÍP OP GJN EP


BSRVJWP index.html 
<!-- inicio do arquivo -->
<p>Móveis baratos pra p&%$#!</p>
</body>
</html>

-PHP EFQPJT  DPMPDBNPT B NVEBOÎB OB ÈSFB EF TUBHF DPN P


DPNBOEP git add index.html  "P FYFDVUBSNPT P git
status UFSÓBNPT

# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: index.html
#

4F RVJTFSNPT BQFOBT SFNPWFS EB ÈSFB EF TUBHF B NVEBOÎB


FGFUVBEB OP BSRVJWP index.html  QSFTFSWBOEP P BSRVJWP
NPEJGJDBEP EFWFNPTFYFDVUBS
$ git reset -- index.html

2VBOEPVTBEPEFTTBNBOFJSB BQFOBTJOGPSNBOEPVNBSRVJWP
RVFUFNNVEBOÎBTOBÈSFBEFTUBHF PDPNBOEP git reset SFUJSB
PBSRVJWPEBTUBHF NBTQSFTFSWBUVEPPRVFGPJNPEJGJDBEPOFTTF
BSRVJWP

"P WFSJGJDBSNPT P BSRVJWP index.html  WFSFNPT RVF BT


BMUFSBÎÜFTRVFGJ[FNPTBOUFSJPSNFOUFFTUBSÍPJOUPDBEBT

%FQPJTEFFYFDVUBSNPTPDPNBOEP git status WFSFNPTRVF

62 3.8 DESFAZENDO MUDANÇAS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
BT NVEBOÎBT BQBSFDFN GPSB EB ÈSFB EF TUBHF $IBOHFT OPU TUBHFE
GPSDPNNJU

# On branch master
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working
directory)
#
# modified: index.html
#
no changes added to commit (use "git add" and/or
"git commit -a")

4F JOWPDBSNPT P DPNBOEP git reset  TFN OFOIVN


QBSÉNFUSP TFSÍPSFUJSBEPTUPEPTPTBSRVJWPTEBÈSFBEFTUBHF
"TBMUFSBÎÜFTFGFUVBEBTOFTTFTBSRVJWPTTFSÍPQSFTFSWBEBT

/P DBTP EF RVFSFSNPT EFTDBSUBS UPEBT BT NVEBOÎBT OPT


BSRVJWPTBPJOWPDBSNPT git reset EFWFNPTVUJMJ[BSBPQÎÍP --
hard 

)È VN EFUBMIF JNQPSUBOUF B PQÎÍP --hard  SFUJSB UPEPT PT


BSRVJWPT EB ÈSFB EF TUBHF F EFTGB[ UPEBT BT BMUFSBÎÜFT OFTTFT
BSRVJWPT /P GJN EBT DPOUBT  P SFQPTJUØSJP GJDB FYBUBNFOUF OP
FTUBEPRVFFTUBWBOPÞMUJNPDPNNJU

1BSB UFTUBSNPT  WBNPT DPMPDBS BT NVEBOÎBT OP BSRVJWP


index.html  OPWBNFOUF OB ÈSFB EF TUBHF  FYFDVUBOEP git add
index.html 

&OUÍP WBNPTFYFDVUBSPDPNBOEP
$ git reset --hard

3.8 DESFAZENDO MUDANÇAS 63


E-book gerado especialmente para Hugo Hiroshi - [email protected]
%FWFBQBSFDFSBMHPDPNP
HEAD is now at 3dd877f Movendo principal.js

5PEPTPTBSRVJWPTGPSBNSFUJSBEPTEBÈSFBEFTUBHFFUPEBTBT
BMUFSBÎÜFTOFTTFTBSRVJWPTGPSBNEFTGFJUBT1PEFNPTDPOGJSNBSJTTP
FYFDVUBOEPPDPNBOEP git status OPWBNFOUF
# On branch master
nothing to commit, working directory clean

0VTFKB EFQPJTEP git reset --hard PSFQPTJUØSJPWPMUPVB


GJDBSFYBUBNFOUFDPNPFTUBWBOPÞMUJNPDPNNJU/FOIVNBSRVJWP
FTUBSÈNPEJGJDBEPFBÈSFBEFTUBHFFTUBSÈWB[JB

%FTGB[FOEPNVEBOÎBTKÈDPNJUBEBT
"HPSB  F TF KÈ UJWFSNPT DPNJUBEP BMHVNBT NPEJGJDBÎÜFT F
RVJTFSNPTWPMUBSBUSÈT 1PSFYFNQMP TFUJWFSNPTGFJUPBTTFHVJOUFT
NVEBOÎBTOPBSRVJWP index.html 
<!-- inicio do arquivo -->
<p>Móveis baratos pra b&%$#!</p>
</body>
</html>

%FQPJT DPNJUBNPTBTBMUFSBÎÜFT
$ git commit -am "Adicionando texto peculiar"

/BTBÓEB UFSÓBNPTBMHPDPNP
[master 172691b] Adicionando texto peculiar
1 file changed, 1 insertion(+)

4F RVJTFSNPT WPMUBS BUSÈT  EFTGB[FOEP BT BMUFSBÎÜFT OP


SFQPTJUØSJP QPEFNPTVTBSPDPNBOEP
$ git revert --no-edit 172691b

64 3.8 DESFAZENDO MUDANÇAS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
/FTTF DPNBOEP  P DØEJHP 172691b  SFQSFTFOUB P ÞMUJNP
DPNNJUFGFUVBEP4FPNJUJSNPTBPQÎÍP --no-edit TFSÈBCFSUP
VNFEJUPSEFUFYUPQBSBFEJUBSNPTBNFOTBHFNEPOPWPDPNNJU

&N WF[ EF QBTTBS P DØEJHP EP ÞMUJNP DPNNJU DPNP


QBSÉNFUSP QBSB P git revert  QPEFSÓBNPT UFS VUJMJ[BEP
HEAD RVF OPOPTTPDBTP BQPOUBQBSBPÞMUJNPDPNNJU

"QØT FYFDVUBS P git revert  UFSÓBNPT DPNP SFTQPTUB BMHP


QBSFDJEPDPN
[master 9274519] Revert "Adicionando texto peculiar"
1 file changed, 1 deletion(-)

"P WFSJGJDBSNPT P BSRVJWP index.html  WFSFNPT RVF BT


BMUFSBÎÜFTEPÞMUJNPDPNNJUGPSBNEFTGFJUBT SFUPSOBOEPËWFSTÍP
BOUFSJPS

4F PCTFSWBSNPT OPWBNFOUF P IJTUØSJDP EF DPNNJUT EP OPTTP


SFQPTJUØSJP DPNPDPNBOEP git log -n 2 --oneline UFSFNPT
9274519 Revert "Adicionando texto peculiar"
172691b Adicionando texto peculiar

/PUFRVFPDPNBOEP git revert FGFUVPVVNOPWPDPNNJU


DPNBWFSTÍPBOUFSJPSEPTBSRVJWPT'PJVTBEBBNFOTBHFN3FWFSU
TFHVJEB EB NFOTBHFN EP DPNNJU BOUFSJPS OP FYFNQMP  3FWFSU
"EJDJPOBOEPUFYUPQFDVMJBS


3.8 DESFAZENDO MUDANÇAS 65


E-book gerado especialmente para Hugo Hiroshi - [email protected]
/PDBTPEFQBTTBSNPTVNDØEJHPEFDPNNJUBOUJHP BQFOBTBT
BMUFSBÎÜFT GFJUBT OBRVFMF DPNNJU TFSÍP EFTGFJUBT *TTP Ï BMHP
CBTUBOUFQPEFSPTP

*NBHJOFRVFWPDÐEFTDVCSBRVFVNCVHWFJPEFVNBBMUFSBÎÍP
EF EFUFSNJOBEP DPNNJU FN VN DPOKVOUP EF BSRVJWPT
"QFOBT DPN VN git revert  Ï QPTTÓWFM EFTGB[FS BT
BMUFSBÎÜFTRVFJOTFSJSBNPCVH

1PSJTTP WBMFSFJUFSBSRVFDPNNJUTQFRVFOPTFCFNNPOUBEPT
TÍPJNQPSUBOUFTQBSBQPEFSNPTVUJMJ[BSPSFBMQPEFSEP(JU

6NBPVUSBGPSNBEFEFTGB[FSBMUFSBÎÜFTKÈDPNJUBEBTÏVTBOEP
P DPNBOEP git reset  TFHVJEP EB PQÎÍP --hard  F EF VN
DØEJHPEFDPNNJU

4FRVJTFSNPTWPMUBSBPDPNNJUBOUFSJPSËTBMUFSBÎÜFTQFDVMJBSFT
TPMJDJUBEBTQFMPOPTTPDMJFOUF EFWFNPTFYFDVUBS
$ git reset --hard 3dd877f

5FSÓBNPTDPNPSFTQPTUBBMHPTJNJMBSB
HEAD is now at 3dd877f Movendo principal.js

4F PCTFSWBNPT PT BSRVJWPT  BT ÞMUJNBT BMUFSBÎÜFT GPSBN


EFTGFJUBT

/PIJTUØSJDPEPSFQPTJUØSJP FYJCJEPBPFYFDVUBSNPT git log


--oneline PTDPNNJUTEFTDBSUBEPTOÍPBQBSFDFN

3dd877f Movendo principal.js


27ffd5e Renomeando CSS

66 3.8 DESFAZENDO MUDANÇAS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
3234100 Removendo página de produtos
65727bb Página de produtos
8aa07bd Diminuindo intervalo de troca de banner
2d04ca8 Banner ao abrir a pagina
842d2cf Inserindo arquivo principal.js
bb229c6 Script de troca de banner
ccff92c Inserindo titulo e diminuindo tamanho da pagina
4a4fdf7 Commit inicial

"PVUJMJ[BSNPTPDPNBOEP git reset  EB NBOFJSB BOUFSJPS


DPN B PQÎÍP --hard  F VN DØEJHP EF DPNNJU  P IJTUØSJDP EP
SFQPTJUØSJPÏSFFTDSJUP

1PSÏN  Ï JNQPSUBOUF NBOUFSNPT UPEBT BT BMUFSBÎÜFT HSBWBEBT


OPSFQPTJUØSJP NFTNPRVFJOEFTFKBEBT"GJOBMEFDPOUBT FTUBNPT
VTBOEPVNTJTUFNBEFDPOUSPMFEFWFSTÜFTKVTUBNFOUFQBSBUFSVN
IJTUØSJDP GJFM EB FWPMVÎÍP EP DØEJHP EF OPTTPT QSPKFUPT 1PS JTTP
OBT SBSBT PDBTJÜFT FN RVF Ï OFDFTTÈSJP EFTGB[FS DPNNJUT
SFDPNFOEBNPTRVFTFKBVUJMJ[BEPPDPNBOEP git revert 

"UVBMJ[BOEP OPTTB WJTVBMJ[BÎÍP HSÈGJDB EP RVF BQSFOEFNPT


BHPSBDPNDPNBOEPTQBSBEFTGB[FSNPEJGJDBÎÜFT UFNPT

3.8 DESFAZENDO MUDANÇAS 67


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB%FTGB[FOEPNVEBOÎBTDPN(JU

68 3.8 DESFAZENDO MUDANÇAS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
CAPÍTULO 4

53"#"-)"/%0$0.
3&104*5»3*03&.050

/PTTP QSPKFUP KÈ QPTTVJ WÈSJPT BSRVJWPT  F UBNCÏN BMHVOT


DPNNJUT RVF GJ[FNPT QBSB HVBSEBS P IJTUØSJDP EBT NPEJGJDBÎÜFT
SFBMJ[BEBT&OUSFUBOUP UPEPT PT DPNNJUT FTUÍP SFHJTUSBEPT BQFOBT
MPDBMNFOUF PVTFKB VOJDBNFOUFOPOPTTPDPNQVUBEPS

4F BMHVN EJB OPTTP DPNQVUBEPS BQSFTFOUBS BMHVN QSPCMFNB


UÏDOJDP F EFJYBS EF GVODJPOBS  PV BUÏ NFTNP TF FMF GPS SPVCBEP
UFSÓBNPT VN TÏSJP QSPCMFNB  QPJT KVOUP DPN FMF QFSEFSÓBNPT
UBNCÏNOPTTPSFQPTJUØSJPFPQSPKFUP

1PEFNPT BEPUBS VNB FTUSBUÏHJB EF SFBMJ[BS CBDLVQT


TFNBOBMNFOUF EP OPTTP SFQPTJUØSJP  PV BUÏ NFTNP EJBSJBNFOUF
QBSB RVF BTTJN TFNQSF UFOIBNPT VNB DØQJB EF TFHVSBOÎB
&OUSFUBOUP  FTTB FTUSBUÏHJB EF SFBMJ[BÎÍP EF CBDLVQT Ï
EFTBDPOTFMIBEB QPS TFS USBCBMIPTB F TVKFJUB B GBMIBT  KÈ RVF
QPEFNPTOPTFTRVFDFSEFSFBMJ[BSPCBDLVQFNBMHVNEJB

"MÏN EJTTP  NBOUFS P SFQPTJUØSJP BQFOBT MPDBMNFOUF OPT USB[


PVUSB RVFTUÍP DPNP GB[FS QBSB USBCBMIBS FN FRVJQF  DPN WÈSJPT
EFTFOWPMWFEPSFT BMUFSBOEP PT BSRVJWPT EP QSPKFUP F SFHJTUSBOEP
FTTBT BMUFSBÎÜFT DPN DPNNJUT  $FSUBNFOUF GJDBS DPNQBDUBOEP F

4 TRABALHANDO COM REPOSITÓRIO REMOTO 69


E-book gerado especialmente para Hugo Hiroshi - [email protected]
FOWJBOEPPSFQPTJUØSJPQBSBPTPVUSPTNFNCSPTEBFRVJQF BDBEB
OPWPDPNNJU OÍPQBSFDFTFSVNBJEFJBNVJUPCPB

3&104*5»3*03&.050
1BSB FWJUBS PT QSPCMFNBT DJUBEPT BOUFSJPSNFOUF  EFWFNPT
USBCBMIBSDPNVNSFQPTJUØSJPSFNPUP RVFOBEBNBJTÏEPRVFVN
SFQPTJUØSJP(JUDSJBEPFNPVUSPDPNQVUBEPS DIBNBEPEFTFSWJEPS

4F PT EFTFOWPMWFEPSFT EB FRVJQF USBCBMIBN OB NFTNB


FNQSFTB  UPEPT FMFT WÍP FTUBS DPOFDUBEPT QFMB SFEF 4FOEP BTTJN
QBSB DSJBSNPT VN SFQPTJUØSJP SFNPUP  EFWFNPT QSJNFJSBNFOUF
VUJMJ[BS BMHVN DPNQVUBEPS EB FNQSFTB RVF FTUFKB DPOFDUBEP OB
SFEF  F DSJBS P SFQPTJUØSJP (JU EP QSPKFUP OFTUF DPNQVUBEPS  RVF
QBTTBSÈBTFSPTFSWJEPSDFOUSBMEPQSPKFUP

$SJBOEPVNSFQPTJUØSJPSFNPUP
" DSJBÎÍP EP SFQPTJUØSJP SFNPUP Ï GFJUB DPN P DPNBOEP git
init  EB NFTNB NBOFJSB RVF GJ[FNPT QBSB DSJBS P SFQPTJUØSJP
MPDBM &OUSFUBOUP  EFWFNPT QBTTBS P QBSÉNFUSP --bare  BP
DPNBOEP
$ git init --bare moveis-ecologicos.git

"P FYFDVUBS P DPNBOEP  TFSÈ BQSFTFOUBEB VNB NFOTBHFN


DPNP
Initialized empty Git repository
in /opt/repositorios/moveis-ecologicos.git/

0 QBSÉNFUSP --bare  TFSWF QBSB RVF P (JU OÍP DSJF VN


XPSLJOH USFF EJSFUØSJP EF USBCBMIP
 JNQFEJOEP RVF DPNNJUT
TFKBN FGFUVBEPT EJSFUBNFOUF OP TFSWJEPS /P OPTTP DBTP  GB[

70 4.1 REPOSITÓRIO REMOTO


E-book gerado especialmente para Hugo Hiroshi - [email protected]
TFOUJEP KÈRVFPTDPNNJUTTFSÍPSFBMJ[BEPTQFMPTEFTFOWPMWFEPSFT
MPDBMNFOUF  FN TFVT DPNQVUBEPSFT  F EFQPJT FTTFT DPNNJUT TFSÍP
FOWJBEPT F BSNB[FOBEPT OP SFQPTJUØSJP SFNPUP  MPDBMJ[BEP OP
TFSWJEPS

"P FYFDVUBS P DPNBOEP git init --bare moveis-


ecologicos.git  P (JU DSJBSÈ VN OPWP EJSFUØSJP DIBNBEP
moveis-ecologicos.git DPNBTFHVJOUFFTUSVUVSB

'JHVSB&TUSVUVSBEFEJSFUØSJPTEPSFQPTJUØSJP(JU

-FNCSFTF EF OVODB NFYFS OFTTFT BSRVJWPT F EJSFUØSJPT  QPJT


FMFT SFQSFTFOUBN P SFQPTJUØSJP (JU F EFWFN TFS NBOJQVMBEPT
BQFOBTQFMP(JU

 "%*$*0/"/%0 0 3&104*5»3*0


3&.050
"HPSB RVF P SFQPTJUØSJP SFNPUP KÈ GPJ DSJBEP OP TFSWJEPS  Ï
QPTTÓWFM FOWJBS PT DPNNJUT FGFUVBEPT OP OPTTP SFQPTJUØSJP MPDBM
QBSBPSFQPTJUØSJPSFNPUP.BT BOUFTEJTTP QSFDJTBNPTEFBMHVNB
NBOFJSBJOEJDBSBP(JUPOEFFTUÈMPDBMJ[BEPPSFQPTJUØSJPSFNPUP

1BSB FOTJOBS BP (JU POEF TF FODPOUSB P OPTTP SFQPTJUØSJP

4.2 ADICIONANDO O REPOSITÓRIO REMOTO 71


E-book gerado especialmente para Hugo Hiroshi - [email protected]
SFNPUP EFWFNPTVUJMJ[BSPDPNBOEP git remote add  OP RVBM
JOGPSNBNPTPTFVFOEFSFÎP4VQPOEPRVFPOPTTPTFSWJEPSFTUFKB
OBSFEFDPNPFOEFSFÎP*1 192.168.10.99 FRVFPSFQPTJUØSJP
SFNPUP EP OPTTP QSPKFUP UFOIB TJEP DSJBEP OP EJSFUØSJP
/opt/repositorios/moveis-ecologicos.git  QBSB
BEJDJPOBSNPT P SFQPTJUØSJP  EFWFNPT FYFDVUBS P DPNBOEP git
remote add EBTFHVJOUFNBOFJSB

$ git remote add servidor


file://192.168.10.99/opt/repositorios/moveis-ecologicos.git

"PFYFDVUBSPDPNBOEP git remote add EFWFNPTJOGPSNBS


P name  OPNF
EPSFQPTJUØSJPSFNPUPFTVB url  FOEFSFÎP


/P FYFNQMP BOUFSJPS  P name  EP SFQPTJUØSJP BEJDJPOBEP GPJ


TFSWJEPS F B url  GPJ
GJMFPQUSFQPTJUPSJPTNPWFJTFDPMPHJDPTHJU

²QPTTÓWFMBEJDJPOBSNBJTEFVNSFQPTJUØSJPSFNPUP EFTEFRVF
DBEBVNUFOIBTFV name EJTUJOUP*TUPQPEFTFSÞUJMTFQSFDJTBSNPT
FOWJBSPTDPNNJUTQBSBNBJTEFVNTFSWJEPS

-JTUBOEPPTSFQPTJUØSJPTSFNPUPT
1BSB MJTUBS PT SFQPTJUØSJPT SFNPUPT RVF GPSBN BEJDJPOBEPT
EFWFNPTVUJMJ[BSPDPNBOEP git remote 
$ git remote
servidor

.BT SFQBSF RVF Ï FYJCJEP BQFOBT P name  EPT SFQPTJUØSJPT


SFNPUPT1BSBRVFUBNCÏNTFKBFYJCJEBB url EFWFNPTBEJDJPOBS
PQBSÉNFUSP -v BPDPNBOEP
$ git remote -v

72 4.2 ADICIONANDO O REPOSITÓRIO REMOTO


E-book gerado especialmente para Hugo Hiroshi - [email protected]
servidor file://192.168.10.99/opt/repositorios/
moveis-ecologicos.git (fetch)
servidor file://192.168.10.99/opt/repositorios/
moveis-ecologicos.git (push)

0CTFSWF RVF P SFQPTJUØSJP SFNPUP GPJ MJTUBEP EVBT WF[FT *TTP


BDPOUFDF QPJT P (JU QFSNJUF RVF UFOIBNPT EVBT URLs  EJTUJOUBT
QBSBPNFTNPSFQPTJUØSJPSFNPUP TFOEPVNBQBSBMFJUVSB GFUDI
F
PVUSB QBSB FTDSJUB QVTI
 *TUP QPEF TFS ÞUJM TF QSFDJTBSNPT VTBS
QSPUPDPMPTEJTUJOUPTQBSBMFJUVSBFFTDSJUB

"MUFSBOEPFSFNPWFOEPPTSFQPTJUØSJPTSFNPUPT
²QPTTÓWFMBMUFSBSP name EFVNSFQPTJUØSJPSFNPUPVUJMJ[BOEP
PDPNBOEP git remote rename 
$ git remote rename servidor outronome
$ git remote
outronome

0 RVF BDPOUFDFSJB TF BMHVÏN BMUFSBTTF P FOEFSFÎP *1 EP


TFSWJEPSEF 192.168.10.99  QBSB 192.168.10.110  5FSÓBNPT
VN QSPCMFNB  QPJT OPTTP SFQPTJUØSJP SFNPUP FTUBSJB BQPOUBOEP
QBSB P FOEFSFÎP BOUJHP %FWFNPT  OFTTF DBTP  BMUFSBS B url  EP
SFQPTJUØSJP SFNPUP  F JTUP Ï GFJUP DPN PVUSP DPNBOEP  P git
remote set-url  QBTTBOEP DPNP QBSÉNFUSP P name  EP
SFQPTJUØSJPSFNPUPFBOPWB url 
$ git remote -v
servidor file://192.168.10.99/opt/repositorios/
moveis-ecologicos.git (fetch)
servidor file://192.168.10.99/opt/repositorios/
moveis-ecologicos.git (push)

$ git remote set-url servidor


file://192.168.10.110/opt/repositorios/moveis-ecologicos.git

$ git remote -v

4.2 ADICIONANDO O REPOSITÓRIO REMOTO 73


E-book gerado especialmente para Hugo Hiroshi - [email protected]
servidor file://192.168.10.110/opt/repositorios/
moveis-ecologicos.git (fetch)
servidor file://192.168.10.110/opt/repositorios/
moveis-ecologicos.git (push)

 &/7*"/%0 $0..*54 1"3" 0


3&104*5»3*03&.050
"HPSB RVF KÈ BEJDJPOBNPT P SFQPTJUØSJP SFNPUP  QPEFNPT
FOGJN FOWJBSPTDPNNJUTQBSBPTFSWJEPS

1BSB FOWJBS PT DPNNJUT MPDBJT  RVF BJOEB OÍP FYJTUFN OP


TFSWJEPS EFWFNPTVUJMJ[BSPDPNBOEP git push  JOGPSNBOEP P
name EPSFQPTJUØSJPSFNPUP OPOPTTPDBTP TFSWJEPS
TFHVJEPEF
NBTUFS
$ git push servidor master

4FSÈFYJCJEBVNBNFOTBHFNDPNP
Counting objects: 3, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 227 bytes | 0 bytes/s, done.
Total 2 (delta 1), reused 0 (delta 0)
To file://192.168.10.99/opt/repositorios/moveis-ecologicos.gi
t/
e573bbb..8a2481d master -> master

1SPOUP"HPSBPTDPNNJUTKÈGPSBNFOWJBEPTQBSBPTFSWJEPS

" QBMBWSB master  RVF VTBNPT OP DPNBOEP BOUFSJPS Ï P


OPNFEBCSBODIQSJODJQBMEPOPTTPSFQPTJUØSJP&TUVEBSFNPT
CSBODIFTDPNQSPGVOEJEBEFNBJTBEJBOUF

74 4.3 ENVIANDO COMMITS PARA O REPOSITÓRIO REMOTO


E-book gerado especialmente para Hugo Hiroshi - [email protected]
$-0/"/%003&104*5»3*03&.050
/PTTPQSPKFUPDPOUJOVBBDSFTDFSFOÍPQBSBNEFDIFHBSNBJT
QFEJEPT EF GVODJPOBMJEBEFT 5JWFNPT EF DPOUSBUBS NBJT VN
EFTFOWPMWFEPS QBSB B FRVJQF  F FMF KÈ FTUÈ QSPOUP QBSB DPNFÎBS B
EFTFOWPMWFSBTOPWBTGVODJPOBMJEBEFTEPTJTUFNB&OUSFUBOUP QBSB
JTTP FMFQSFDJTBSÈ QSJNFJSBNFOUF PCUFSVNBDØQJBEPSFQPTJUØSJP
DPNUPEPTPTBSRVJWPTFDPNNJUT

1BSB PCUFSNPT VNB DØQJB EF VN SFQPTJUØSJP (JU  EFWFNPT


VUJMJ[BSPDPNBOEP git clone JOGPSNBOEPB63-EPSFQPTJUØSJP
BTFSDMPOBEP
$ git clone file://192.168.10.99/opt/repositorios/
moveis-ecologicos.git

4FSÈFYJCJEBVNBNFOTBHFNDPNP
Cloning into 'projeto'...
remote: Counting objects: 8, done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 8 (delta 1), reused 0 (delta 0)
Receiving objects: 100% (8/8), 618.32 KiB | 0 bytes/s, done.
Resolving deltas: 100% (1/1), done.
Checking connectivity... done.

"P FYFDVUBS P DPNBOEP BOUFSJPS  P (JU DSJBSÈ VN EJSFUØSJP


DIBNBEP moveis-ecologicos  RVF TFSÈ VNB DØQJB MPDBM EP
SFQPTJUØSJPSFNPUP DPOUFOEP UPEPT PT BSRVJWPT F P IJTUØSJDP EPT
DPNNJUTSFBMJ[BEPT

1PSQBESÍP P(JUDSJBSÈVNEJSFUØSJPDPNPNFTNPOPNFEP
SFQPTJUØSJP FUBNCÏNKÈBEJDJPOBSÈVNSFQPTJUØSJPSFNPUPDPNP
OBNF origin RVFBQPOUBQBSBB63-DMPOBEB

4.4 CLONANDO O REPOSITÓRIO REMOTO 75


E-book gerado especialmente para Hugo Hiroshi - [email protected]
 4*/$30/*;"/%0 0 3&104*5»3*0
-0$"-
"QØT DMPOBS P SFQPTJUØSJP EP QSPKFUP  P OPWP EFTFOWPMWFEPS
GJOBMJ[PV VNB EBT OPWBT GVODJPOBMJEBEFT  SFBMJ[BOEP BMHVOT
DPNNJUT QBSB JTTP F  JODMVTJWF  KÈ FOWJPV UBJT DPNNJUT QBSB P
TFSWJEPS

4FOEP BTTJN  QBSB RVF QPTTBNPT WJTVBMJ[BS BT BMUFSBÎÜFT F


DPNNJUT SFBMJ[BEPT QFMP OPWP EFTFOWPMWFEPS  EFWFNPT
TJODSPOJ[BSPOPTTPSFQPTJUØSJPMPDBMDPNPTFSWJEPS QVYBOEPPT
OPWPTDPNNJUTQBSBPOPTTPSFQPTJUØSJPMPDBM

"TJODSPOJ[BÎÍPEPSFQPTJUØSJPMPDBMDPNPTFSWJEPSÏGFJUBDPN
PVTPEPDPNBOEP git pull POEFEFWFNPTJOGPSNBSP name
EP SFQPTJUØSJP SFNPUP RVF RVFSFNPT TJODSPOJ[BS  F P nome  EB
CSBODIMPDBMBTFSBUVBMJ[BEB
$ git pull servidor master

4FSÈFYJCJEBVNBNFOTBHFNDPNP
remote: Counting objects: 3, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 2 (delta 1), reused 0 (delta 0)
Unpacking objects: 100% (2/2), done.
From file://192.168.10.99/opt/repositorios/moveis-ecologicos
* branch master -> FETCH_HEAD
8a2481d..61131f4 master -> servidor/master
Updating 8a2481d..61131f4
Fast-forward
promocoes.html | 0
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 promocoes.html

"HPSB  OPTTP SFQPTJUØSJP MPDBM FTUÈ BUVBMJ[BEP  F KÈ Ï QPTTÓWFM


WJTVBMJ[BS BT BMUFSBÎÜFT F DPNNJUT FGFUVBEPT QFMP OPWP

76 4.5 SINCRONIZANDO O REPOSITÓRIO LOCAL


E-book gerado especialmente para Hugo Hiroshi - [email protected]
EFTFOWPMWFEPS

3&104*5»3*0$&/53"-*;"%006%*453*#6¶%0

0 (JU Ï VN TJTUFNB EF DPOUSPMF EF WFSTÍP EJTUSJCVÓEP F  QPS


JTTP OÍPEFQFOEFEFVNTFSWJEPSDFOUSBM EJGFSFOUFNFOUFEP
$74 F 47/ $POGPSNF WJTUP OP DBQÓUVMP BOUFSJPS  QPEFNPT
USBCBMIBSBQFOBTDPNPSFQPTJUØSJPMPDBM

&OUSFUBOUP DPOGPSNFWJTUPOFTUFDBQÓUVMP ÏQPTTÓWFMUSBCBMIBS


DPNP(JUEFNBOFJSBDFOUSBMJ[BEB POEFVNTFSWJEPSTFSÈP
SFQPTJUØSJP DFOUSBM  SFDFCFOEP PT DPNNJUT EF UPEPT PT
EFTFOWPMWFEPSFT  F FTUFT  QPS TVB WF[  TJODSPOJ[BOEP TFVT
SFQPTJUØSJPT MPDBJT DPN P TFSWJEPS  GSFRVFOUFNFOUF  QBSB
PCUFS PT OPWPT DPNNJUT &TUB Ï B NBOFJSB NBJT DPNVN EF
VUJMJ[BÎÍPEP(JU

13050$0-04461035"%041&-0(*5
2VBOEP BEJDJPOBNPT PV DMPOBNPT VN SFQPTJUØSJP (JU
EFWFNPTJOGPSNBSB url EPSFQPTJUØSJP RVFVTBBMHVNQSPUPDPMP
QBSBDPNVOJDBÎÍPFUSBOTGFSÐODJBEFEBEPT

0 (JU TVQPSUB RVBUSP QSPUPDPMPT QBSB DPNVOJDBÎÍP F


USBOTGFSÐODJBEFEBEPT

-PDBM
44)
(JU
)551)5514

4.6 PROTOCOLOS SUPORTADOS PELO GIT 77


E-book gerado especialmente para Hugo Hiroshi - [email protected]
1SPUPDPMPMPDBM
0 QSPUPDPMP MPDBM GPJ P VUJMJ[BEP OFTUF DBQÓUVMP &MF QPEF TFS
VTBEP RVBOEP P SFQPTJUØSJP SFNPUP FTUJWFS MPDBMJ[BEP OP NFTNP
DPNQVUBEPS FN RVF TFFODPOUSBPSFQPTJUØSJPMPDBM PVFNPVUSP
DPNQVUBEPSRVFFTUFKBDPOFDUBEPOBNFTNBSFEF

" VUJMJ[BÎÍP EP QSPUPDPMP MPDBM Ï GFJUB DPN P VTP EP QSFGJYP
file:// OB63-EPSFQPTJUØSJPBTFSDMPOBEP

$ git clone file:///opt/repositorios/moveis-ecologicos.git

²QPTTÓWFMPNJUJSPQSFGJYP file:// OB63- CBTUBOEPBQFOBT


JOGPSNBSPDBNJOIPEPSFQPTJUØSJP
$ git clone /opt/repositorios/moveis-ecologicos.git

"T WBOUBHFOT EB VUJMJ[BÎÍP EP QSPUPDPMP MPDBM TÍP B TVB


TJNQMJDJEBEF  F P VTP EBT QFSNJTTÜFT FYJTUFOUFT EF BDFTTP B
BSRVJWPT F EJSFUØSJPT +È VNB EBT EFTWBOUBHFOT Ï B EJGJDVMEBEF EF
DPOGJHVSBÎÍPQBSBBDFTTPFYUFSOPËSFEF

1SPUPDPMP44)
0 QSPUPDPMP 44) Ï  QSPWBWFMNFOUF  P NBJT VTBEP  QPS TFS
SÈQJEP TFHVSP TJNQMFTEFDPOGJHVSBSFQPSTVQPSUBSUBOUPBMFJUVSB
RVBOUPBFTDSJUBEFEBEPT

0VTPEPQSPUPDPMP44)ÏGFJUPDPNB63-TFHVJOEPPQBESÍP
usuario@servidor:/caminho/repositorio.git 1PSFYFNQMP

$ git clone [email protected]:/opt/repositorios/


moveis-ecologicos.git

1SPUPDPMP(JU

78 4.6 PROTOCOLOS SUPORTADOS PELO GIT


E-book gerado especialmente para Hugo Hiroshi - [email protected]
0(JUQPTTVJVNQSPUPDPMPQSØQSJP RVFÏTJNJMBSBP44) NBT
TFN P NFDBOJTNP EF BVUFOUJDBÎÍP 1PS DPOUB EJTTP  FMF BDBCB
TFOEP NBJT SÈQJEP FOUSFUBOUP  OÍP Ï TFHVSP  F TFV VTP Ï BQFOBT
QBSBMFJUVSB

1BSBDMPOBSVNSFQPTJUØSJPVUJMJ[BOEPPQSPUPDPMP(JU B63-
EFWFQPTTVJSPQSFGJYP git:// 
$ git clone git://192.168.10.99/opt/repositorios/
moveis-ecologicos.git

1SPUPDPMP)551)5514
0 (JU UBNCÏN TVQPSUB P QSPUPDPMP )551  RVF Ï CBTUBOUF
VTBEPRVBOEPFTUBNPTUSBCBMIBOEPFNFNQSFTBTRVFQPTTVFNVN
DPOUSPMFSÓHJEPEFTFHVSBOÎB FBQPSUB VUJMJ[BEBQFMPQSPUPDPMP
44) ÏCMPRVFBEB

1BSBDMPOBSVNSFQPTJUØSJPVTBOEPPQSPUPDPMP)551 B63-
EFWFQPTTVJSPQSFGJYP http:// 
$ git clone http://192.168.10.99/opt/repositorios/
moveis-ecologicos.git

5BNCÏN Ï QPTTÓWFM VUJMJ[BS P QSPUPDPMP )5514  RVF BEJDJPOB


VNBDBNBEBEFTFHVSBOÎBTPCSFP)551 DPNPVTPEPQSPUPDPMP
44-5-4
$ git clone https://192.168.10.99/opt/repositorios/
moveis-ecologicos.git

4.6 PROTOCOLOS SUPORTADOS PELO GIT 79


E-book gerado especialmente para Hugo Hiroshi - [email protected]
CAPÍTULO 5

)041&%"/%00
3&104*5»3*0/0(*5)6#

/P DBQÓUVMP BOUFSJPS  WJNPT DPNP VUJMJ[BS VN SFQPTJUØSJP


SFNPUP QBSBRVF UFOIBNPT GBDJMJEBEF BP USBCBMIBS FN FRVJQF OP
QSPKFUP "HPSB  TFNQSF RVF VN OPWP NFNCSP EB FRVJQF GPS
USBCBMIBSOPQSPKFUP FMFEFWFQSJNFJSBNFOUFDMPOBSPSFQPTJUØSJP
FGFUVBS BT BMUFSBÎÜFT OFDFTTÈSJBT  DPNJUBS UBJT BMUFSBÎÜFT  F FOUÍP
FOWJBSPTDPNNJUTQBSBPSFQPTJUØSJPSFNPUP

"TTJNTFOEP WJNPTRVFBVUJMJ[BÎÍPEFVNSFQPTJUØSJPSFNPUP
OPTBKVEBBUFSVNBNFMIPSPSHBOJ[BÎÍPQBSBUSBCBMIBSFNFRVJQF
FN VN QSPKFUP  BMÏN EF UBNCÏN GVODJPOBS DPNP CBDLVQ
&OUSFUBOUP  DPNP P SFQPTJUØSJP SFNPUP FTUÈ MPDBMJ[BEP FN VN
TFSWJEPS EB FNQSFTB  GJDBNPT MJNJUBEPT B FGFUVBS B TJODSPOJ[BÎÍP
BQFOBTEFOUSPEFMB QPJTQSFDJTBSFNPTFTUBSDPOFDUBEPTËSFEFMPDBM
QBSBDPOTFHVJSNPTBDFTTBSPTFSWJEPS

4F BMHVN EJB VN EFTFOWPMWFEPS QSFDJTBS TJODSPOJ[BS BT


BMUFSBÎÜFT DPN P SFQPTJUØSJP SFNPUP EF GPSB EB FNQSFTB QPS
FYFNQMP EFDBTB
JTTP OÍP WBJ TFS QPTTÓWFM  QPJT FMF OÍP WBJ FTUBS
DPOFDUBEPËSFEFMPDBM

"UÏ Ï QPTTÓWFM BDFTTBS B SFEF MPDBM EB FNQSFTB FYUFSOBNFOUF

80 5 HOSPEDANDO O REPOSITÓRIO NO GITHUB


E-book gerado especialmente para Hugo Hiroshi - [email protected]
NBTQBSBJTTPTFSÈOFDFTTÈSJPDPOGJHVSBSVNB71/ 7JSUVBM1SJWBUF
/FUXPSL
 PV MJCFSBS BDFTTP FYUFSOP BP TFSWJEPS WJB 44)  P RVF
QPEF TFS BMHP DPNQMJDBEP EF TF GB[FS  BMÏN EF UBNCÏN QPEFS TFS
QSPJCJEPQPSBMHVNBTFNQSFTBT EFWJEPBQPMÓUJDBTEFTFHVSBOÎB

0 JEFBM TFSJB RVF P SFQPTJUØSJP SFNPUP FTUJWFTTF BDFTTÓWFM QFMB


JOUFSOFU  QPJT BTTJN QPEFSÓBNPT BDFTTÈMP EF RVBMRVFS MVHBS EP
NVOEP CBTUBOEPBQFOBTFTUBSNPTDPOFDUBEPTBFMB

 4&37*±04 %& )041&%"(&. %&


130+&504
&YJTUFN BMHVOT TFSWJÎPT QBSB IPTQFEBHFN EF QSPKFUPT OB
JOUFSOFURVFQFSNJUFN B VUJMJ[BÎÍP EF GFSSBNFOUBT EF DPOUSPMF EF
WFSTÍP " JEFJB Ï RVF WPDÐ QPTTB IPTQFEBS TFVT QSPKFUPT
KVOUBNFOUFDPNPTSFQPTJUØSJPT OBJOUFSOFU FBTTJNTFSÈQPTTÓWFM
BDFTTÈMPTEFRVBMRVFSMVHBSEPNVOEP

%FOUSFPTQSJODJQBJTTFSWJÎPTRVFTVQPSUBNP(JU FTUÍP

(JU)VC
#JUCVDLFU
(PPHMF$PEF

 (*5)6# " 3&%& 40$*"- %04


%&4&/70-7&%03&4
$SJBEPFNQPS5PN1SFTUPO8FSOFS $ISJT8BOTUSBUIF
1+ )ZFUU  DPN P PCKFUJWP EF TJNQMJGJDBS P DPNQBSUJMIBNFOUP EF
QSPKFUPT  P (JU)VC Ï IPKF P NBJPS TFSWJÎP EF IPTQFEBHFN EF
SFQPTJUØSJPTEFQSPKFUPT"UVBMNFOUF FMFDPOUÏNNBJTEFNJMIÜFT

5.1 SERVIÇOS DE HOSPEDAGEM DE PROJETOS 81


E-book gerado especialmente para Hugo Hiroshi - [email protected]
EFVTVÈSJPTFNBJTEFNJMIÜFTEFSFQPTJUØSJPT

'JHVSB-PHPUJQPEP(JU)VC

²PQSJODJQBMTFSWJÎPVUJMJ[BEPQFMPTEFTFOWPMWFEPSFTRVFVTBN
P (JU 7ÈSJPT QSPKFUPT JNQPSUBOUFT FTUÍP IPTQFEBEPT OP (JU)VC
EFOUSFFMFT

K2VFSZ
3VCZPO3BJMT
/PEFKT
%KBOHP
#PPUTUSBQ

0 (JU)VC Ï UBNCÏN VNB GFSSBNFOUB DPMBCPSBUJWB  QPJT OPT


QFSNJUF JOUFSBHJS OPT SFQPTJUØSJPT  QPS NFJP EF BMHVNBT
GVODJPOBMJEBEFTDPNP

*TTVF 5SBDLFS QBSB DSJBÎÍP F HFTUÍP EF CVHT F


NJMFTUPOFTEPQSPKFUP
1VMM 3FRVFTUT QBSB RVF PVUSPT VTVÈSJPT QPTTBN
FOWJBS TFVT DPNNJUT DPN BMUFSBÎÜFT OP QSPKFUP  PV
DPNNJUTDPNDPSSFÎÜFTEFCVHT
$PNNJU $PNNFOUT QBSB RVF PT VTVÈSJPT QPTTBN
DPNFOUBS F EJTDVUJS TPCSFBTNPEJGJDBÎÜFTOPDØEJHP
EFVNEFUFSNJOBEPDPNNJU

"MÏNEJTTP OP(JU)VCÏQPTTÓWFMDSJBSPSHBOJ[BÎÜFTF EFOUSP


EFMBT  DSJBS FRVJQFT  QBSB RVF FOUÍP TFKB QPTTÓWFM WJODVMBS

82 5.2 GITHUB: A REDE SOCIAL DOS DESENVOLVEDORES


E-book gerado especialmente para Hugo Hiroshi - [email protected]
EFUFSNJOBEPTVTVÈSJPTBEFUFSNJOBEBTFRVJQFTCFNDPNPWJODVMBS
BTFRVJQFTBPTSFQPTJUØSJPTFNRVFFMBTWÍPUSBCBMIBS*TTPÏNVJUP
ÞUJM QBSB FNQSFTBT RVF QPTTVFN NVJUPT QSPKFUPT F NVJUPT
DPMBCPSBEPSFT QPJTQFSNJUFVNBNFMIPSPSHBOJ[BÎÍP

1PS DPOUB EFTTBT GVODJPOBMJEBEFT F QPS QFSNJUJS VNB NBJPS


DPMBCPSBÎÍPOPTSFQPTJUØSJPT P(JU)VCÏDPOTJEFSBEPQPSNVJUPT
DPNPVNBFTQÏDJFEFSFEFTPDJBMQBSBEFTFOWPMWFEPSFT

 &/$0/53"/%0 130+&504 &


7*46"-*;"/%00$»%*(0'0/5&
7BNPTBDFTTBSPTJUFEP(JU)VCFWJTVBMJ[BSPDØEJHPGPOUFEF
BMHVNQSPKFUPPQFOTPVSDF1BSBJTTP CBTUBBCSJSVNOBWFHBEPSF
BDFTTBSPFOEFSFÎPIUUQHJUIVCDPN

'JHVSB1ÈHJOBJOJDJBMEP(JU)VC

&TTBÏBQÈHJOBJOJDJBMEP(JU)VC/FMBQPEFNPTFGFUVBSMPHJO
DBEBTUSBS VN OPWP VTVÈSJP  GB[FS CVTDBT F BDFTTBS BMHVOT MJOLT
JOUFSFTTBOUFT

/P UPQP EB QÈHJOB FYJTUF VN DBNQP EF UFYUP  VTBEP QBSB

5.3 ENCONTRANDO PROJETOS E VISUALIZANDO O CÓDIGO-FONTE 83


E-book gerado especialmente para Hugo Hiroshi - [email protected]
QFTRVJTBS QPS SFQPTJUØSJPT PV VTVÈSJPT 7BNPT QFTRVJTBS QFMP
SFQPTJUØSJPEPK2VFSZ  VNB GBNPTB CJCMJPUFDB EF +BWB4DSJQU 1BSB
JTTP CBTUBEJHJUBSBQBMBWSBKRVFSZ OP DBNQP EF UFYUP F BQFSUBS B
UFDMB Enter 

'JHVSB$BNQPQBSBQFTRVJTBSQPSSFQPTJUØSJPT

"QØT SFBMJ[BS B QFTRVJTB  TFSÈ BQSFTFOUBEB VNB QÈHJOB DPN P


SFTVMUBEP MJTUBOEPUPEPTPTSFQPTJUØSJPTRVFQPTTVBNOPOPNFPV
OBEFTDSJÎÍPBQBMBWSBKRVFSZ

'JHVSB1ÈHJOBDPNPSFTVMUBEPEBQFTRVJTB

7BNPTTFMFDJPOBSPQSJNFJSPSFTVMUBEP RVFOPDBTPÏPQSPKFUP
K2VFSZRVFFTUBNPTCVTDBOEP

84 5.3 ENCONTRANDO PROJETOS E VISUALIZANDO O CÓDIGO-FONTE


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB-JOLQBSBPSFQPTJUØSJPEPK2VFSZ

/B QÈHJOB EP SFQPTJUØSJP EP K2VFSZ  Ï QPTTÓWFM OBWFHBS QFMP


DØEJHPGPOUF  WJTVBMJ[BS B EFTDSJÎÍP EP QSPKFUP  PT DPNNJUT  PT
VTVÈSJPT RVF DPOUSJCVFN QBSB P QSPKFUP  F BUÏ NFTNP CBJYBS P
SFQPTJUØSJPDPNQBDUBEPFNVNBSRVJWP .zip 

'JHVSB1ÈHJOBEPSFQPTJUØSJPEPK2VFSZ

7JTVBMJ[BOEPPTDPNNJUTEPQSPKFUP
7BNPT BHPSB WJTVBMJ[BS PT ÞMUJNPT DPNNJUT SFBMJ[BEPT OP
QSPKFUP1BSBJTTP CBTUBDMJDBSOPMJOLDPNNJUT

5.3 ENCONTRANDO PROJETOS E VISUALIZANDO O CÓDIGO-FONTE 85


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB-JOLQBSBBQÈHJOBEFDPNNJUTEPK2VFSZ

4FSÈ BQSFTFOUBEB VNB QÈHJOB MJTUBOEP PT ÞMUJNPT DPNNJUT


FGFUVBEPT OP QSPKFUP  POEF UBNCÏN Ï QPTTÓWFM OBWFHBS QPS
DPNNJUTNBJTBOUJHPT7JTVBMJ[BSFTUBQÈHJOBTFSJBDPNPFYFDVUBSP
DPNBOEP git log OPSFQPTJUØSJP

'JHVSB1ÈHJOBEFDPNNJUTEPK2VFSZ

"PDMJDBSFNBMHVNEPTDPNNJUT TFSÈBQSFTFOUBEBVNBQÈHJOB
EFEFUBMIBNFOUP POEFQPEFNPTWJTVBMJ[BSBTBMUFSBÎÜFTFGFUVBEBT
TJNJMBSBRVBOEPFYFDVUBNPTPDPNBOEP git diff 

86 5.3 ENCONTRANDO PROJETOS E VISUALIZANDO O CÓDIGO-FONTE


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB1ÈHJOBEFEFUBMIBNFOUPEFDPNNJU

7JTVBMJ[BOEPPDØEJHPGPOUFEPQSPKFUP
%FWPMUBËQÈHJOBQSJODJQBMEPSFQPTJUØSJP BHPSBOBWFHBSFNPT
QFMPDØEJHPGPOUF+ÈOBQÈHJOBQSJODJQBMEPSFQPTJUØSJP ÏQPTTÓWFM
WJTVBMJ[BSPTBSRVJWPTFEJSFUØSJPTEPQSPKFUP7BNPTOBWFHBSQFMP
EJSFUØSJP src 

5.3 ENCONTRANDO PROJETOS E VISUALIZANDO O CÓDIGO-FONTE 87


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB%JSFUØSJPTEPSFQPTJUØSJP

4FSÍP FYJCJEPT UPEPT PT BSRVJWPT F TVCEJSFUØSJPT FYJTUFOUFT  F


QPEFNPTEFUBMIBSBMHVNEFMFT DPNPPBSRVJWP ajax.js 

'JHVSB%FUBMIBNFOUPEFVNEPTBSRVJWPTEPSFQPTJUØSJP

88 5.3 ENCONTRANDO PROJETOS E VISUALIZANDO O CÓDIGO-FONTE


E-book gerado especialmente para Hugo Hiroshi - [email protected]
"MÏN EF TFS FYJCJEP UPEP P DØEJHPGPOUF EP BSRVJWP  OFTTB
QÈHJOB UBNCÏN Ï QPTTÓWFM WJTVBMJ[BS UPEPT PT VTVÈSJPT RVF KÈ
FGFUVBSBNDPNNJUTDPNNPEJGJDBÎÜFTOFTUFBSRVJWP

$3*"/%06.646«3*0/0(*5)6#
1BSB QPEFS DPNFÎBS B VTBS P (JU)VC F DSJBS PT OPTTPT
SFQPTJUØSJPT  EFWFNPT QSJNFJSBNFOUF DBEBTUSBS VN OPWP VTVÈSJP
OPTJUF

"UFOÎÍP$BTPWPDÐKÈUFOIBDSJBEPVNVTVÈSJPBOUFSJPSNFOUF
OPDBQÓUVMP5PVSQSÈUJDP WPDÐQPEFTFHVJSQBSBBQSØYJNBTFÎÍP

" DSJBÎÍP EF VN OPWP VTVÈSJP OP (JU)VC EFWF TFS GFJUB OB
QÈHJOBJOJDJBMEPTJUFIUUQHJUIVCDPN

'JHVSB1ÈHJOBEFDSJBÎÍPEFOPWPVTVÈSJP

%FWFNPTJOGPSNBSVNOPNFEFVTVÈSJP PFNBJMFVNBTFOIB
$BTPKÈFYJTUBVNPVUSPVTVÈSJPDBEBTUSBEPDPNPNFTNPOPNFEF
VTVÈSJPFPVFNBJMJOGPSNBEP P(JU)VCOPTNPTUSBSÈVNBMFSUB
JOEJDBOEPUBMTJUVBÎÍP FTØQFSNJUJSÈRVFDPOUJOVFNPTPDBEBTUSP
BQØTBBMUFSBÎÍPEFTTB T
JOGPSNBÎÍP ÜFT


"QØTJOGPSNBSPTEBEPTFDMJDBSOPCPUÍP4JHOVQGPS(JU)VC

5.4 CRIANDO UM USUÁRIO NO GITHUB 89


E-book gerado especialmente para Hugo Hiroshi - [email protected]
TFSFNPT SFEJSFDJPOBEPT QBSB VNB QÈHJOB EF CPBTWJOEBT  POEF
EFWFNPTFTDPMIFSRVBMPQMBOPBTFSDPOUSBUBEP

'JHVSB1ÈHJOBEFCPBTWJOEBTFFTDPMIBEPQMBOPEFDPOUSBUBÎÍP

1MBOPTEFDPOUSBUBÎÍPPGFSFDJEPTQFMP(JU)VC
0(JU)VCQPTTVJBMHVOTQMBOPTRVFQPEFNPTDPOUSBUBS TFOEP
VNHSBUVJUP FPTPVUSPTDPNDVTUPTNFOTBJT

/P QMBOP HSBUVJUP EP (JU)VC  P VTVÈSJP OÍP UFN OFOIVN


DVTUP  FOUSFUBOUP  FMF TPNFOUF QPEFSÈ DSJBS SFQPTJUØSJPT QÞCMJDPT
PV TFKB  RVBMRVFS QFTTPB QPEFSÈ FODPOUSBS TFVT SFQPTJUØSJPT F
JODMVTJWF  UFS BDFTTP BP DØEJHPGPOUF &TUF QMBOP Ï JEFBM QBSB
VTVÈSJPT RVF RVFSFN DSJBS FPV DPMBCPSBS DPN QSPKFUPT PQFO

90 5.4 CRIANDO UM USUÁRIO NO GITHUB


E-book gerado especialmente para Hugo Hiroshi - [email protected]
TPVSDF

.BTNVJUBTFNQSFTBTQPTTVFNQSPKFUPTRVFTÍPSFTUSJUPT FOÍP
QPEFNUFSPDØEJHPGPOUFBDFTTÓWFMBRVBMRVFSQFTTPB/FTUFDBTP B
FNQSFTBEFWFSÈDPOUSBUBSBMHVNEPTQMBOPTQBHPTPGFSFDJEPTQFMP
(JU)VC

" EJGFSFOÎB FOUSF PT QMBOPT QBHPT FTUÈ OB RVBOUJEBEF EF


SFQPTJUØSJPT QSJWBEPT RVF QPEFSÍP TFS DSJBEPT /P QMBOP NBJT
CBSBUP  RVF BUVBMNFOUF DVTUB  QPS NÐT  Ï QPTTÓWFM DSJBS BUÏ 
SFQPTJUØSJPT QSJWBEPT  FORVBOUP RVF OP QMBOP NBJT DBSP  RVF
BUVBMNFOUF DVTUB  QPS NÐT  FTTB RVBOUJEBEF EF SFQPTJUØSJPT
QSJWBEPTTPCFQBSB

"QØT FTDPMIFS P QMBOP RVF NBJT TF BEFRVF ËT OPTTBT


OFDFTTJEBEFT  EFWFNPT GJOBMJ[BS P DBEBTUSP DMJDBOEP OP CPUÍP
'JOJTITJHOVQ FTFSFNPTSFEJSFDJPOBEPTQBSBBQÈHJOBRVFNPTUSB
PTSFQPTJUØSJPTEPOPTTPVTVÈSJPFPVUSBTJOGPSNBÎÜFT&TTBQÈHJOB
ÏDPOIFDJEBDPNP%BTICPBSE

'JHVSB1ÈHJOBEFEBTICPBSE

5.4 CRIANDO UM USUÁRIO NO GITHUB 91


E-book gerado especialmente para Hugo Hiroshi - [email protected]
0(JU)VCFOWJBSÈVNFNBJMEFDPOGJSNBÎÍPEFDBEBTUSP DPN
VN MJOL QBSB WBMJEBÎÍP F BUJWBÎÍP ² JNQPSUBOUF BDFTTBSNPT FTTF
MJOL  QPJT BTTJN P FNBJM TFSÈ WBMJEBEP F BTTPDJBEP BP OPTTP
VTVÈSJP "MÏN EJTTP  UPEBT BT OPUJGJDBÎÜFT EP (JU)VC TFSÍP
FOWJBEBTBQFOBTBP T
FNBJM T
DBEBTUSBEP T


$3*"/%003&104*5»3*0%0130+&50
"HPSB RVF UFNPT VN VTVÈSJP DBEBTUSBEP  KÈ Ï QPTTÓWFM DSJBS P
SFQPTJUØSJPEPQSPKFUP

1BSBDSJBSVNOPWPSFQPTJUØSJPOP(JU)VC EFWFNPTBDFTTBSB
63- IUUQHJUIVCDPNOFX  PV DMJDBS OP CPUÍP /FX SFQPTJUPSZ
FYJTUFOUFOBQÈHJOBQSJODJQBM

'JHVSB1ÈHJOBEFDSJBÎÍPEFOPWPSFQPTJUØSJP

/FTUB QÈHJOB  EFWFNPT QSFFODIFS P OPNF EP SFQPTJUØSJP OP


DBNQP Repository name  F  PQDJPOBMNFOUF  QSFFODIFS VNB

92 5.5 CRIANDO O REPOSITÓRIO DO PROJETO


E-book gerado especialmente para Hugo Hiroshi - [email protected]
EFTDSJÎÍP OP DBNQP Description  "QØT JTTP  CBTUB DMJDBS OP
CPUÍP Create repository  F TFSFNPT SFEJSFDJPOBEPT QBSB B
QÈHJOB QSJODJQBM EP SFQPTJUØSJP  POEF TFSÍP FYJCJEBT BT
JOGPSNBÎÜFT EF DPNP BEJDJPOBS P SFQPTJUØSJP SFNPUP  QBSB
QPEFSNPTTJODSPOJ[BSPTDPNNJUTEPOPTTPSFQPTJUØSJPMPDBM

'JHVSB1ÈHJOBEPOPWPSFQPTJUØSJP

"HPSB CBTUB BEJDJPOBSNPT P SFQPTJUØSJP SFNPUP  DPN P


DPNBOEP git remote add  DPOGPSNF FYJCJEP OB QÈHJOB EP
SFQPTJUØSJP
$ git remote add origin
https://github.com/fulanodasilva/moveis-ecologicos.git

 &/7*"/%0 04 $0..*54 %0 130+&50


1"3"0(*5)6#
$PN P SFQPTJUØSJP SFNPUP BEJDJPOBEP  QPEFNPT GJOBMNFOUF
FOWJBSPTDPNNJUTQBSBP(JU)VC

5.6 ENVIANDO OS COMMITS DO PROJETO PARA O GITHUB 93


E-book gerado especialmente para Hugo Hiroshi - [email protected]
0FOWJPEPTDPNNJUTÏGFJUPEBNFTNBNBOFJSBRVFWJNPTOP
DBQÓUVMPBOUFSJPS PVTFKB VUJMJ[BOEPPDPNBOEP git push 
$ git push origin master

$PNPVTBNPTPQSPUPDPMP https BPBEJDJPOBSPSFQPTJUØSJP


SFNPUP TFNQSFRVFGPSNPTTJODSPOJ[BSOPTTPSFQPTJUØSJPMPDBM P
(JUOPTTPMJDJUBSÈPVTVÈSJPFTFOIBDBEBTUSBEPTOP(JU)VC

"QØTP(JUFOWJBSPTDPNNJUTQBSBPSFQPTJUØSJPSFNPUP TFSÈ
FYJCJEBVNBNFOTBHFNDPNP
Counting objects: 8, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (6/6), done.
Writing objects: 100% (8/8), 15.78 KiB | 0 bytes/s, done.
Total 8 (delta 0), reused 0 (delta 0)
To https://github.com/fulanodasilva/moveis-ecologicos.git
* [new branch] master -> master

4FBUVBMJ[BSNPTBQÈHJOBEPOPTTPSFQPTJUØSJP WFSFNPTRVFPT
BSRVJWPTFPTDPNNJUTGPSBNFOWJBEPTDPNTVDFTTP

'JHVSB1ÈHJOBEPSFQPTJUØSJPBUVBMJ[BEBDPNPTBSRVJWPTFDPNNJUT

94 5.6 ENVIANDO OS COMMITS DO PROJETO PARA O GITHUB


E-book gerado especialmente para Hugo Hiroshi - [email protected]
 $-0/"/%0 0 3&104*5»3*0
)041&%"%0/0(*5)6#
"HPSB RVF P OPTTP SFQPTJUØSJP SFNPUP FTUÈ IPTQFEBEP OP
(JU)VC  PT EFTFOWPMWFEPSFT EB FRVJQF QPEFSÍP TJODSPOJ[BS TFVT
SFQPTJUØSJPTMPDBJTEFRVBMRVFSMVHBSEPNVOEP OÍPGJDBOEPNBJT
SFTUSJUPTBTJODSPOJ[BSBQFOBTRVBOEPDPOFDUBEPTOBSFEFMPDBMEB
FNQSFTB

1BSB RVF VN OPWP EFTFOWPMWFEPS PCUFOIB VNB DØQJB EP


SFQPTJUØSJP  FMF BHPSB EFWFSÈ DMPOBS P SFQPTJUØSJP SFNPUP
MPDBMJ[BEPOP(JU)VC
$ git clone https://github.com/fulanodasilva/
moveis-ecologicos.git

 $0-"#03"/%0 $0. 130+&504 01&/


4063$&
$POGPSNF DJUBEP BOUFSJPSNFOUF  FYJTUFN NJMIBSFT EFQSPKFUPT
IPTQFEBEPTOP(JU)VC TFOEPRVFNVJUPTEFTUFTTÍPPQFOTPVSDF
PVTFKB TJHOJGJDBRVFRVBMRVFSEFTFOWPMWFEPSQPEFDPMBCPSBSDPN
NFMIPSJBTFDPSSFÎÜFTEFCVHT.BTDPNPGB[FSQBSBDPMBCPSBSDPN
UBJTQSPKFUPT

7BNPTTVQPSRVFRVFSFNPTDPMBCPSBSDPNBMHVNQSPKFUPPQFO
TPVSDF  QPS FYFNQMP  P 73BQUPS  VN GSBNFXPSL .7$ QBSB
EFTFOWPMWFEPSFT+BWB

5.7 CLONANDO O REPOSITÓRIO HOSPEDADO NO GITHUB 95


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB1ÈHJOBEPSFQPTJUØSJPEP73BQUPS

1SJNFJSBNFOUF  WBNPT QSFDJTBS DMPOBS P SFQPTJUØSJP QBSB


UFSNPT BDFTTP BP DØEJHPGPOUF  F FOUÍP FGFUVBS BT NFMIPSJBT
EFTFKBEBT
$ git clone https://github.com/caelum/vraptor4.git

1SPOUP +È UFNPT VNB DØQJB EP SFQPTJUØSJP DPN UPEPT PT


BSRVJWPT EP QSPKFUP "HPSB CBTUB FGFUVBS BT NFMIPSJBT EFTFKBEBT
SFHJTUSBOEPBTBMUFSBÎÜFTSFBMJ[BEBTDPNDPNNJUT

.BTMFNCSFTFEFRVFPTDPNNJUTSFBMJ[BEPTFYJTUFNBQFOBTOP
OPTTP SFQPTJUØSJP MPDBM  QSFDJTBNPT BHPSB FOWJÈMPT QBSB P
SFQPTJUØSJP SFNPUP EP QSPKFUP OP (JU)VC  DPN P DPNBOEP git
push 

$ git push origin master

&OUSFUBOUP  B FYFDVÎÍP EP DPNBOEP BOUFSJPS GBMIB  HFSBOEP B


TFHVJOUFNFOTBHFNEFFSSP

96 5.8 COLABORANDO COM PROJETOS OPEN SOURCE


E-book gerado especialmente para Hugo Hiroshi - [email protected]
remote: Permission to caelum/vraptor4.git denied to
fulanodasilva.
fatal: unable to access 'https://github.com/caelum/
vraptor4.git/':
The requested URL returned error: 403

0 QSPCMFNB Ï RVF P VTVÈSJP fulanodasilva  OÍP UFN


QFSNJTTÍP QBSB FOWJBS DPNNJUT QBSB P SFQPTJUØSJP EP 73BQUPS
QPJT FTTF SFQPTJUØSJP OÍP QFSUFODF B FMF  NBT TJN BP VTVÈSJP
caelum 

1BSB SFTPMWFS FTTF QSPCMFNB  P VTVÈSJP caelum  QPEFSJB


BDFTTBS B QÈHJOB EF DPOGJHVSBÎÜFT EP SFQPTJUØSJP 73BQUPS OP
(JU)VC  F BEJDJPOBS P VTVÈSJP fulanodasilva  DPNP
DPMBCPSBEPS

.BT FTTB BCPSEBHFN EFWF TFS VTBEB BQFOBT QBSB BEJDJPOBS PT


VTVÈSJPT RVF GB[FN QBSUF EB FRVJQF EF EFTFOWPMWJNFOUP EP
QSPKFUP  PV TFKB  BQFOBT PT EFTFOWPMWFEPSFT RVF USBCBMIBN
FGFUJWBNFOUFOPQSPKFUP%FTTBGPSNB BDBCBTFOEPJOWJÈWFMUFSEF
BEJDJPOBS VN OPWP VTVÈSJP DPNP DPMBCPSBEPS UPEB WF[ RVF VN
OPWPEFTFOWPMWFEPSRVJTFSDPMBCPSBSDPNPQSPKFUP

"MÏN EJTTP  B QBSUJS EP NPNFOUP FN RVF BEJDJPOBNPT VN


VTVÈSJP DPNP DPMBCPSBEPS  FMF QBTTB B UFS QFSNJTTÍP EF FOWJBS
DPNNJUT QBSB P SFQPTJUØSJP TFN SFTUSJÎÜFT  P RVF QPEF TFS
BSSJTDBEP  QPJT OÍP IÈ VNB BWBMJBÎÍP QSÏWJB EBT BMUFSBÎÜFT RVF
GPSBNSFBMJ[BEBT

1VMMSFRVFTUT
" TPMVÎÍP EP (JU)VC QBSB B DPMBCPSBÎÍP DPN QSPKFUPT PQFO
TPVSDF GPJVNBGVODJPOBMJEBEFDIBNBEBEFQVMMSFRVFTUT

5.8 COLABORANDO COM PROJETOS OPEN SOURCE 97


E-book gerado especialmente para Hugo Hiroshi - [email protected]
1SJNFJSBNFOUF  EFWFNPT BDFTTBS B QÈHJOB EP QSPKFUP RVF
RVFSFNPT DPMBCPSBS OP (JU)VC OP OPTTP DBTP
IUUQHJUIVCDPNDBFMVNWSBQUPS
FDMJDBSOPCPUÍP'PSL

'JHVSB#PUÍPQBSBGB[FSPGPSLEP73BQUPS

"P DMJDBS OP CPUÍP 'PSL  P (JU)VC DSJBSÈ VNB DØQJB EP


SFQPTJUØSJPEP73BQUPSOPOPTTPVTVÈSJPEP(JU)VC

'JHVSB1ÈHJOBEPSFQPTJUØSJPEP73BQUPSQFSUFODFOUFBPOPTTPVTVÈSJP

3FQBSF RVF BHPSB P OPTTP VTVÈSJP EP (JU)VC QPTTVJ VN


SFQPTJUØSJPDIBNBEP vraptor4 PVTFKB FTTFSFQPTJUØSJPÏBOPTTB
WFSTÍPEPQSPKFUP

0 QSØYJNP QBTTP Ï DMPOBS P SFQPTJUØSJP B QBSUJS EP OPTTP


VTVÈSJP EP (JU)VC  F OÍP EP VTVÈSJP caelum  QPJT BTTJN
DPOTFHVJSFNPTSFBMJ[BSP push  EPT DPNNJUT MPDBJT QBSB P OPTTP
SFQPTJUØSJPOP(JU)VC
$ git clone https://github.com/fulanodasilva/vraptor4.git

98 5.8 COLABORANDO COM PROJETOS OPEN SOURCE


E-book gerado especialmente para Hugo Hiroshi - [email protected]
"HPSB  BQØT SFBMJ[BS BT BMUFSBÎÜFT F DPNNJUT OP QSPKFUP
DPOTFHVJSFNPTSFBMJ[BSP push  OPSNBMNFOUF  QPJT P SFQPTJUØSJP
SFNPUP OP (JU)VC QFSUFODF BP OPTTP VTVÈSJP &OUSFUBOUP  PT
DPNNJUT GPSBN FOWJBEPT BQFOBT QBSB P OPTTP SFQPTJUØSJP OP
(JU)VC

1BSB RVF PT DPNNJUT TFKBN JOUFHSBEPT BP SFQPTJUØSJP PSJHJOBM


EP QSPKFUP OP DBTP  P SFQPTJUØSJP vraptor4  EP VTVÈSJP
caelum
 EFWFNPT FOWJBS VN 1VMM 3FRVFTU QBSB P VTVÈSJP
caelum TPMJDJUBOEPRVFTFKBGFJUPVNQVMMEPTOPTTPTDPNNJUT

1BSBDSJBSVN Pull Request ÏOFDFTTÈSJPBDFTTBSBQÈHJOBEP


OPTTP SFQPTJUØSJP OP (JU)VC  DMJDBS OP MJOL 1VMM 3FRVFTUT  F FN
TFHVJEBDMJDBSOPCPUÍP/FXQVMMSFRVFTU

'JHVSB1ÈHJOBDPNMJOLQBSBHFSFODJBS1VMMSFRVFTUT

'JHVSB1ÈHJOBDPNCPUÍPQBSBDSJBSVNOPWP1VMMSFRVFTU

4FSFNPT SFEJSFDJPOBEPT QBSB B QÈHJOB EF DSJBÎÍP EP QVMM


SFRVFTU OBRVBMTFSÍPMJTUBEPTPTDPNNJUTFBMUFSBÎÜFTSFBMJ[BEPT

5.8 COLABORANDO COM PROJETOS OPEN SOURCE 99


E-book gerado especialmente para Hugo Hiroshi - [email protected]
1BSB DPOGJSNBS B DSJBÎÍP EP QVMM SFRVFTU  CBTUB DMJDBS OP CPUÍP
Create pull request 

'JHVSB1ÈHJOBDPNCPUÍPQBSBDPOGJSNBSBDSJBÎÍPEPQVMMSFRVFTU

"QØTDSJBSNPTP pull request PVTVÈSJP caelum SFDFCFSÈ


VNBOPUJGJDBÎÍPEP(JU)VC FQPEFSÈFGFUVBSP pull EPTOPTTPT
DPNNJUT  JOUFHSBOEPPT BP SFQPTJUØSJP PSJHJOBM EP QSPKFUP $MBSP
JTTPBQØTVNBBOÈMJTFEBTBMUFSBÎÜFTFGFUVBEBTFNOPTTPTDPNNJUT

1SPOUP&TTFÏPQSPDFTTPVUJMJ[BEPQFMPTEFTFOWPMWFEPSFTRVF
DPMBCPSBNDPNQSPKFUPTPQFOTPVSDFIPTQFEBEPTOP(JU)VC

100 5.8 COLABORANDO COM PROJETOS OPEN SOURCE


E-book gerado especialmente para Hugo Hiroshi - [email protected]
CAPÍTULO 6

03("/*;"/%00
53"#"-)0$0.
#3"/$)&4

/PTTP DMJFOUF OÍP FTUÈ TBUJTGFJUP DPN P EFTJHO EB QÈHJOB


$POWFOIBNPT BQÈHJOBRVFDSJBNPTOÍPFTUÈEBTNBJTCPOJUBTEP
NVOEP

'JHVSB%FTJHOEBQÈHJOBEFJYBBEFTFKBS

4BCFNPT VN QPVRVJOIP TPCSF EFTJHO  NBT QSFDJTBNPT EF


BMHVNBTTFNBOBTGPDBEBTOBNFMIPSJBEPWJTVBM1PSÏN UFNPTVN
QSPCMFNB OPTTP DMJFOUF DPOUJOVB QFEJOEP QBSB BMUFSBSNPT P
DPOUFÞEPEBQÈHJOB WÈSJBTWF[FTQPSTFNBOB

"MÏN EJTTP  UFNPT EF DPSSJHJS CVHT DPNP FSSPT EF QPSUVHVÐT
MJOLTJODPSSFUPTFUD&TBCFNPTRVFUPEBTFTTBTBTNVEBOÎBTUÐNEF
TFSQVCMJDBEBTEFJNFEJBUP

6 ORGANIZANDO O TRABALHO COM BRANCHES 101


E-book gerado especialmente para Hugo Hiroshi - [email protected]
4F QVCMJDBSNPT P TJUF FORVBOUP P OPWP EFTJHO FTUÈ TFOEP
EFTFOWPMWJEP  UFSFNPT VNB QÈHJOB QFMB NFUBEF & QSFDJTBNPT EF
UFNQPQBSBFYQFSJNFOUBSBMHVNBTQPTTJCJMJEBEFT&BHPSB

5SBCBMIBOEPFNQBSBMFMPDPNCSBODIFT
"NBJPSJBEPTTJTUFNBTEFDPOUSPMFEFWFSTÍPQFSNJUFUSBCBMIP
FN QBSBMFMP QPS NFJP EF CSBODIFT 6NB CSBODI Ï VNB MJOIB
JOEFQFOEFOUFEFEFTFOWPMWJNFOUPFNRVFQPEFNPTDPNJUBSOPWBT
WFSTÜFTEPDØEJHPTFNBGFUBSPVUSBTCSBODIFT

&NNVJUPTTJTUFNBTEFDPOUSPMFEFWFSTÍP VUJMJ[BSCSBODIFTÏ
BMHPCBTUBOUFMFOUPFUSBCBMIPTP1PSÏN BFTUSVUVSBJOUFSOBEP(JU
QFSNJUFMJEBSNPTDPNCSBODIFTEFNBOFJSBNVJUPSÈQJEBFMFWF

"#3"/$)."45&3
7BNPT OPT DFSUJGJDBS EF RVF FTUBNPT OP OPTTP SFQPTJUØSJP
moveis FYFDVUBOEP cd ~/moveis FNVNUFSNJOBM

1BSBMJTUBSBTCSBODIFTEPOPTTPSFQPTJUØSJP EFWFNPTFYFDVUBS
PDPNBOEP
$ git branch

5FSFNPTDPNPSFTQPTUB
* master

1FSBÓ 'PJ NPTUSBEB VNB CSBODI DIBNBEB master  NFTNP


TFN UFSNPT DSJBEPT OFOIVNB CSBODI *TTP PDPSSFV QPSRVF P (JU
QPTTVJQPSQBESÍPVNBCSBODIQSJODJQBMDIBNBEB master 5PEPT
PTOPTTPTDPNNJUTBUÏBHPSBPDPSSFSBNOFMB

102 6.1 A BRANCH MASTER


E-book gerado especialmente para Hugo Hiroshi - [email protected]
0CTFSWFRVFBCSBODI master UFNVNBTUFSJTDP
OBGSFOUF
*TTPJOEJDBRVFÏBCSBODIBUVBM FNRVFFTUBNPTUSBCBMIBOEP

/P (JU  UPEB CSBODI Ï CBTJDBNFOUF VN BQPOUBEPS QBSB VN


DPNNJU " DBEB OPWP DPNNJU RVF GB[FNPT  B CSBODI Ï NPWJEB
BVUPNBUJDBNFOUF QBTTBOEPBBQPOUBSQBSBFTTFOPWPDPNNJU1PS
JTTP QPSQBESÍP BCSBODI master BQPOUBQBSBPÞMUJNPDPNNJU
RVFGJ[FNPT

4FRVJTFSNPTMJTUBSBTCSBODIFTFYJTUFOUFTOPOPTTPSFQPTJUØSJP
DPN PT DPNNJUT BTTPDJBEPT  QPEFSÓBNPT VUJMJ[BS B PQÎÍP -v  EP
DPNBOEP git branch 
$ git branch -v

"SFTQPTUB OPOPTTPDBTP TFSJB


* master b92285b Revert "Adicionando texto peculiar"

"OUFT EF DPOUJOVBSNPT  Ï JNQPSUBOUF TBCFSNPT VNB EBT


JOGPSNBÎÜFTRVFVNDPNNJUBSNB[FOB PDPNNJUQBJ RVFÏPRVF
GPJ FGFUVBEP BOUFSJPSNFOUF /B WFSEBEF  VN DPNNJU QPEF UFS
WÈSJPTQBJT PRVFWFSFNPTBEJBOUF

1PEFNPT PCTFSWBS PT DPNNJUT DPN TFVT SFTQFDUJWPT QBJT


FYFDVUBOEPPDPNBOEP git log DPNBPQÎÍP --parents 

+È QBSB WFSJGJDBSNPT P DPNNJU QBSB P RVBM B master  FTUÈ


BQPOUBOEP QBTTBNPTBPQÎÍP --decorate QBSBPDPNBOEP git
log +VOUBOEPBTPQÎÜFT QPEFNPTFYFDVUBS git log --oneline
--decorate --parents  QBSB FYJCJS P IJTUØSJDP SFTVNJEP EP
OPTTP SFQPTJUØSJP DPN P DPNNJU QBSB P RVBM B master  FTUÈ
BQPOUBEPFPTDPNNJUTQBJEFDBEBDPNNJU5FSÓBNPTVNBTBÓEB
QBSFDJEBDPN

6.1 A BRANCH MASTER 103


E-book gerado especialmente para Hugo Hiroshi - [email protected]
b92285b a5b9fce (HEAD, master) Revert "Adicionando texto
peculiar"
a5b9fce 2259f55 Adicionando texto peculiar
2259f55 d211fac Movendo principal.js
d211fac 515da0a Renomeando CSS
515da0a e9ca4c6 Removendo página de produtos
e9ca4c6 793e567 Página de produtos
793e567 0f2b749 Diminuindo intervalo de troca de banner
0f2b749 7e1c195 Banner ao abrir pagina
7e1c195 9a20490 Inserindo arquivo principal.js
9a20490 83b60c3 Script de troca de banner
83b60c3 1a02a4f Inserindo titulo e diminuindo tamanho da pagina
1a02a4f Commit inicial

0CTFSWF RVF B SFTQPTUB EP DPNBOEP BOUFSJPS BQSFTFOUB USÐT


DPMVOBT P DØEJHP EP DPNNJU  P DØEJHP EP QBJ F B NFOTBHFN EP
DPNNJU 1PS FYFNQMP  QPEFNPT WFS RVF P QBJ EP DPNNJU
d211fac  3FOPNFBOEP $44
 GPJ P DPNNJU 515da0a
3FNPWFOEPQÈHJOBEFQSPEVUPT


/PUF UBNCÏN RVF OPTTP QSJNFJSP DPNNJU  P EF DØEJHP


1a02a4f QPTTVJBQFOBTEVBTDPMVOBT JOEJDBOEPRVFFTTFDPNNJU
OÍP QPTTVJ VN QBJ "MÏN EJTTP  QPEFNPT WFS RVF B CSBODI
master BQPOUBQBSBPÞMUJNPDPNNJU EFDØEJHP b92285b /ÍP
TFQSFPDVQFDPNP HEAD KÈRVFWFSFNPTBTFHVJSTFVTJHOJGJDBEP

6NB WJTVBMJ[BÎÍP EP OPTTP IJTUØSJDP EF DPNNJUT EB CSBODI


master TFSJB

'JHVSB"CSBODINBTUFS

104 6.1 A BRANCH MASTER


E-book gerado especialmente para Hugo Hiroshi - [email protected]
$3*"/%06."#3"/$)
1BSB DSJBSNPT VNB CSBODI DIBNBEB design  QBSB
USBCBMIBSNPTOBNFMIPSJBEPEFTJHO CBTUBFYFDVUBSNPT
$ git branch design

/ÍP TFSÈ FYJCJEB OFOIVNB SFTQPTUB 4F MJTUBSNPT BT CSBODIFT


DPNPDPNBOEP git branch UFSFNPT
design
* master

"HPSBUFNPTEVBTCSBODIFT/PUFRVFBCSBODIBUVBMDPOUJOVB
TFOEP B master  RVF FTUÈ EFTUBDBEB DPN VN BTUFSJTDP
 0
DPNBOEP git branch  BQFOBT DSJB VNB OPWB CSBODI  NBT OÍP
NVEBQBSBBCSBODIDSJBEB

"OPWBCSBODIRVFBDBCBNPTEFDSJBS design
BQPOUBQBSBP
NFTNP DPNNJU RVF B CSBODI RVF FTUÈWBNPT BOUFSJPSNFOUF
master
1PEFNPTWFSJGJDBSJTTPDPNPDPNBOEP git branch -
v 

design b92285b Revert "Adicionando texto peculiar"


* master b92285b Revert "Adicionando texto peculiar"

.BTPOEFP(JUHVBSEBBJOGPSNBÎÍPEFRVBMÏBCSBODIBUVBM
"ÓRVFFOUSBP HEAD RVFÏVNBQPOUBEPSFTQFDJBMRVFJOEJDBRVBM
ÏBCSBODIOBRVBMFTUBNPTUSBCBMIBOEP

7JTVBMJ[BOEPPOPTTPSFQPTJUØSJPMPHPBQØTBDSJBÎÍPEBCSBODI
design UFSÓBNPT

6.2 CRIANDO UMA BRANCH 105


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB"CSBODIEFTJHOFP)&"%

530$"/%0%&#3"/$)
+È DSJBNPT OPTTB CSBODI design  NBT BJOEB FTUBNPT OB
master  1BSB USPDBSNPT QBSB B CSBODI SFDFOUFNFOUF DSJBEB
EFWFNPTFYFDVUBS
$ git checkout design

%FWFBQBSFDFSDPNPSFTQPTUB
Switched to branch 'design'

%FQPJT EF FYFDVUBS P DPNBOEP BOUFSJPS  P HEAD  QBTTB B


BQPOUBSQBSBBOPWBCSBODI design 

4FFYFDVUBSNPTPDPNBOEP git branch -v UFSFNPT


* design b92285b Revert "Adicionando texto peculiar"
master b92285b Revert "Adicionando texto peculiar"

0CTFSWF RVF P BTUFSJTDP


 RVF JOEJDB B CSBODI BUVBM GPJ
NVEBEP QBSB B CSBODI design  "NCBT BT CSBODIFT DPOUJOVBN

106 6.3 TROCANDO DE BRANCH


E-book gerado especialmente para Hugo Hiroshi - [email protected]
BQPOUBOEPQBSBPNFTNPDPNNJU

7JTVBMJ[BOEPPFTUBEPEPOPTTPSFQPTJUØSJP UFSÓBNPT

'JHVSB)&"%BQPOUBOEPQBSBEFTJHO

$POGPSNF WJNPT OP DBQÓUVMP 5SBCBMIBOEP DPN SFQPTJUØSJP


MPDBM  P DPNBOEP git checkout  BMÏN EF USPDBS B CSBODI
BUVBM  UBNCÏN QPEF TFS VTBEP QBSB EFTDBSUBS NVEBOÎBT EF
VN BSRVJWP RVF BJOEB OÍP FTUÍP OB ÈSFB EF TUBHF 1BSB
EFTDBSUBSNPT BT NVEBOÎBT EP BSRVJWP index.html  QPS
FYFNQMP EFWFNPTFYFDVUBS git checkout -- index.html 

/B WFSEBEF  B PQÎÍP --  OÍP Ï FTUSJUBNFOUF OFDFTTÈSJB


1PSÏN ÏVNBCPBQSÈUJDB KÈRVFTFSWFQBSBJOGPSNBSRVFTF
USBUBEFVNBSRVJWP%FTTBNBOFJSB BKVEBBFWJUBSQSPCMFNBT
DBTPVNBCSBODIUFOIBPNFTNPOPNFEFBMHVNBSRVJWP

$SJBOEPFKÈUSPDBOEPQBSBVNBOPWBCSBODI

6.3 TROCANDO DE BRANCH 107


E-book gerado especialmente para Hugo Hiroshi - [email protected]
/PTTP DMJFOUF QFEJV RVF OØT DPNFÎÈTTFNPT B DPOTUSVJS VNB
MPKBPOMJOFQBSBWFOEBEPTNØWFJT4FSJBBMHPEFNPSBEP EFMPOHP
QSB[P 1PS JTTP  DPOTUSVJSÓBNPT B MPKB POMJOF VNB OPWB CSBODI
DIBNBEB loja 

$SJBS VNB CSBODI loja  DPN git branch  TØ QBSB EFQPJT
NVEBSQBSBBOPWBCSBODIDPN git checkout ÏBMHPUFEJPTP

4FSJBJOUFSFTTBOUFKÈDSJBSNPTFNVEBSNPTQBSBBOPWBCSBODI
loja EFVNBTØWF[1PEFNPTGB[FSJTTPQBTTBOEPBPQÎÍP -b
QBSBPDPNBOEP git checkout 
$ git checkout -b loja

"TBÓEBBQSFTFOUBEBTFSJB
Switched to a new branch 'loja'

4FMJTUBSNPTBTCSBODIFTDPN git branch -v UFSÓBNPT


design b92285b Revert "Adicionando texto peculiar"
* loja b92285b Revert "Adicionando texto peculiar"
master b92285b Revert "Adicionando texto peculiar"

/PUFRVFPBTUFSJTDP
FTUÈOBCSBODI loja JOEJDBOEPRVF
FTTB Ï B CSBODI BUVBM & B loja  GPJ DSJBEB BQPOUBOEP QBSB P
DPNNJU b92285b PNFTNPEBTPVUSBTCSBODIFT

%&-&5"/%06."#3"/$)
.BT OÍP UFNPT UFNQP QBSB DSJBS VNB MPKB POMJOF 5FNPT EF
OPTGPDBSOBTOPTTBTUBSFGBTBUVBJT$PNPOÍPWBNPTVTBSBCSBODI
loja QPSVNCPNUFNQP TFSJBCPNSFNPWÐMB"TTJN FWJUBNPT
DPOGVTÜFTFEFTQFSEÓDJPOPOPTTPSFQPTJUØSJP

108 6.4 DELETANDO UMA BRANCH


E-book gerado especialmente para Hugo Hiroshi - [email protected]
/ÍPÏQPTTÓWFMSFNPWFSVNBCSBODIFORVBOUPFTUJWFSNPTOFMB
1PS JTTP  EFWFNPT JS QBSB PVUSB CSBODI 1BSB JS QBSB B CSBODI
master EFWFNPTFYFDVUBS git checkout master 

1BSB EFMFUBS VNB CSBODI  EFWFNPT VTBS B PQÎÍP -d  EP


DPNBOEP git branch 
$ git branch -d loja

%FWFBQBSFDFSVNBNFOTBHFNDPNPBTFHVJS
Deleted branch loja (was b92285b).

"CSBODI loja  GPJ EFMFUBEB /PTTP SFQPTJUØSJP FTUÈ MJNQP F


DSJTUBMJOP

4F KÈ UJWÏTTFNPT GFJUP BMHVN DPNNJU OB CSBODI loja  BP


FYFDVUBSNPT git branch -d loja UFSÓBNPTDPNPSFTQPTUB
error: The branch 'loja' is not fully merged.
If you are sure you want to delete it, run 'git branch -D loja'.

/ÍP Ï QPTTÓWFM EFMFUBS DPN B PQÎÍP -d  VNB CSBODI RVF


QPTTVJDPNNJUTBJOEBOÍPBQMJDBEPTFNPVUSBTCSBODIFT WFSFNPT
DPNPNFTDMBSCSBODIFTNBJTBEJBOUF


1BSB SFNPWFSNPT B CSBODI loja  TF UJWFSNPT GFJUP BMHVN


DPNNJU EFWFNPTVUJMJ[BSBPQÎÍP -D 
$ git branch -D loja

5FSÓBNPTOBTBÓEB
Deleted branch loja (was b92285b).

"HPSBTJN0TDPNNJUTEBCSBODI loja TFSJBNEFTDBSUBEPTF


BCSBODITFSJBSFNPWJEB

6.4 DELETANDO UMA BRANCH 109


E-book gerado especialmente para Hugo Hiroshi - [email protected]
 $0.*5"/%0 $»%*(0 &. 6." /07"
#3"/$)
%FDJEJNPT VUJMJ[BS VNB GFSSBNFOUB QBSB BVYJMJBS OB NFMIPSJB
EPEFTJHOP#PPUTUSBQ

" QSJNFJSB DPJTB Ï DFSUJGJDBSOPT RVF FTUBNPT OB CSBODI


design  FYFDVUBOEP git checkout design  %FQPJT EJTTP
WBNPTBMUFSBSP index.html  USPDBOEP OPTTP $44 GFJP QFMP $44
EP#PPUTUSBQ FDPMPDBOEPPBUSJCVUP class FNBMHVNBTUBHT
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="description" content="Móveis ecológicos">
<meta name="keywords" content="moveis ecologicos">
<link rel="stylesheet"
href="http://netdna.bootstrapcdn.com/bootstrap/3.1.1/
css/bootstrap.min.css">
<title>Móveis Ecológicos</title>
<script src="js/principal.js"></script>
</head>
<body onload="trocaBanner();">
<div class="container">
<div class="jumbotron">
<h1>Móveis Ecológicos S. A.</h1>
<h2 id="mensagem"></h2>
<ul class="list-group">
<li class="list-group-item">
Móveis de garrafas PET
</li>
<li class="list-group-item">
Móveis de latinhas de alumínio
</li>
<li class="list-group-item">
Móveis de papelão
</li>
</ul>
</div>
</div>

110 6.5 COMITANDO CÓDIGO EM UMA NOVA BRANCH


E-book gerado especialmente para Hugo Hiroshi - [email protected]
</body>
</html>

"QFOBT DPN FTTBT QFRVFOBT BMUFSBÎÜFT  FNCFMF[BNPT VN


CPDBEPOPTTBQÈHJOB

'JHVSB1ÈHJOBFNCFMF[BEB

5BNCÏNWBNPTSFNPWFSPOPTTP$44BOUJHPQBSBOÍPGJDBSNPT
DPN DØEJHP PCTPMFUP  FYFDVUBOEP P DPNBOEP git rm
principal.css 

"HPSB WBNPTBEJDJPOBSËÈSFBEFTUBHFBTBMUFSBÎÜFTFDPNJUÈ
MBT DPN P DPNBOEP git commit -am "Adicionando
Bootstrap" 

/BTBÓEB TFSÈJNQSFTTP
[design 8f53065] Adicionando Bootstrap
2 files changed, 23 insertions(+), 19 deletions(-)
delete mode 100644 principal.css

0CTFSWF OP UFYUP BOUFSJPS RVF GPJ FYJCJEP P OPNF EB CSBODI
design FNRVFFTUBNPTDPNJUBOEP

"P FYFDVUBSNPT P DPNBOEP git log -n 3 --oneline --


decorate --parents UFSÓBNPT

6.5 COMITANDO CÓDIGO EM UMA NOVA BRANCH 111


E-book gerado especialmente para Hugo Hiroshi - [email protected]
8f53065 b92285b (HEAD, design) Adicionando Bootstrap
b92285b a5b9fce (master) Revert "Adicionando texto peculiar"
a5b9fce 2259f55 Adicionando texto peculiar

/PUFRVFBCSBODI master BJOEBDPOUJOVBBQPOUBOEPQBSBP


DPNNJU EF DØEJHP b92285b  3FWFSU "EJDJPOBOEP UFYUP
QFDVMJBS
 +È B CSBODI design  QBTTPV B BQPOUBS QBSB P OPWP
DPNNJU  EF DØEJHP 8f53065  "EJDJPOBOEP #PPUTUSBQ
 0CTFSWF
UBNCÏNRVFP HEAD BQPOUBQBSBPNFTNPDPNNJU

6NHSÈGJDPSFQSFTFOUBOEPPOPTTPDPNNJUOBCSBODI design
TFSJB

'JHVSB$PNNJUOBCSBODIEFTJHO

70-5"/%01"3"0."45&3&'";&/%0
6.""-5&3"±°0
"JOEBOÍPBDBCBNPTEFFNCFMF[BSBOPTTBQÈHJOB NBTOPTTP
DMJFOUFOPTMJHPVQFEJOEPRVFNPEJGJDÈTTFNPTPTUFYUPTEPCBOOFS
&QFEJVRVFQVCMJDÈTTFNPTVSHFOUFNFOUFBTBMUFSBÎÜFT

" QSJNFJSB DPJTB RVF EFWFNPT GB[FS Ï WPMUBS QBSB B CSBODI

112 6.6 VOLTANDO PARA O MASTER E FAZENDO UMA ALTERAÇÃO


E-book gerado especialmente para Hugo Hiroshi - [email protected]
master FYFDVUBOEPPDPNBOEP git checkout master 

7JTVBMJ[BOEP P FTUBEP EP OPTTP SFQPTJUØSJP OFTTF QPOUP


UFSÓBNPT

'JHVSB7PMUBOEPËCSBODINBTUFS

"HPSBRVFFTUBNPTOBCSBODI master WBNPTBMUFSBSPTUFYUPT


EPCBOOFSOPBSRVJWP principal.js 
var banners = ["Do lixo ao luxo!","Reaproveitar é aproveitar!"];
//restante do arquivo

&NTFHVJEB WBNPTDPNJUBSOPTTBTBMUFSBÎÜFTDPNPDPNBOEP
git commit -am "Alterando textos do banner"  5FSÓBNPT
OBTBÓEB
[master 2223859] Alterando textos do banner
1 file changed, 1 insertion(+), 1 deletion(-)

/FTTFQPOUP OPTTPSFQPTJUØSJPFTUBSJBQBSFDJEPDPN

6.6 VOLTANDO PARA O MASTER E FAZENDO UMA ALTERAÇÃO 113


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB/PWPDPNNJUOBNBTUFS

/PUF RVF B CSBODI master  FTUÈ BQPOUBOEP QBSB P DPNNJU


2223859 RVFBDBCBNPTEFSFBMJ[BS+ÈBCSBODI design DPOUJOVB
BQPOUBOEP QBSB P NFTNP DPNNJU RVF FTUBWB BOUFSJPSNFOUF
1PEFSÓBNPT FOUÍP QVCMJDBSDPNSBQJEF[PTOPWPTCBOOFSTTFNBT
NPEJGJDBÎÜFTEFEFTJHO RVFBJOEBOÍPGPSBNBQSPWBEBT

.&4$-"/%0"-5&3"±¿&4
.PTUSBNPT P OPWP EFTJHO QBSB P OPTTP DMJFOUF F FMF HPTUPV
CBTUBOUF1FEJVQBSBDPMPDBSNPTOPBSPRVFUFNPTBHPSB&PNBJT
SÈQJEPQPTTÓWFM

5FNPTEVBTBMUFSBÎÜFTPTOPWPTUFYUPTEPCBOOFS RVFFTUÍPOB
CSBODI master FPFNCFMF[BNFOUPEBQÈHJOB RVFFTUÈOBCSBODI
design 

1PS JTTP  QSFDJTBNPT NFTDMBS BT BMUFSBÎÜFT RVF GJ[FNPT OB

114 6.7 MESCLANDO ALTERAÇÕES


E-book gerado especialmente para Hugo Hiroshi - [email protected]
CSBODI design DPNBTRVFGJ[FNPTOB master *EFOUJGJDBSPRVF
NVEPV DPQJBOEPFDPMBOEPOBNÍPÏVNUSBCBMIPSB[PÈWFM DPN
BMUB DIBODF EF JOTFSJSNPT VN FSSP "JOEB CFN RVF P (JU WBJ OPT
BKVEBSBGB[FSJTTP

7FSJGJDBOEPCSBODIFTBJOEBOÍPNFTDMBEBT
$POTJEFSBOEP RVF FTUBNPT OB CSBODI master  QPEFNPT
WFSJGJDBS BT CSBODIFT BJOEB OÍP NFTDMBEBT DPN B PQÎÍP --no-
merged EPDPNBOEP git branch 

$ git branch --no-merged

5FSÓBNPTBTFHVJOUFTBÓEB
design

*TTP JOEJDB RVF IÈ NVEBOÎBT BJOEB OÍP NFTDMBEBT OB CSBODI
design 

0DPNBOEP git branch UBNCÏNUFNBPQÎÍP --merged 4F


FYFDVUÈTTFNPT git branch --merged UFSÓBNPT
* master

.FTDMBOEPBMUFSBÎÜFTDPNNFSHF
1BSB KVOUBSNPT UPEBT BT BMUFSBÎÜFT RVF GJ[FNPT OB CSBODI
design DPNBTEBCSBODI master NFTDMBOEPBTEVBT QPEFNPT
VUJMJ[BSPDPNBOEP
$ git merge design -m "Mesclando com a branch design"

4FSÈFYJCJEBVNBSFTQPTUBTFNFMIBOUFËTFHVJOUF
Removing principal.css
Merge made by the 'recursive' strategy.

6.7 MESCLANDO ALTERAÇÕES 115


E-book gerado especialmente para Hugo Hiroshi - [email protected]
index.html | 31 +++++++++++++++++++++++--------
principal.css | 11 -----------
2 files changed, 23 insertions(+), 19 deletions(-)
delete mode 100644 principal.css

1SPOUP .VEBOÎBT NFTDMBEBT "P FYFDVUBSNPT P DPNBOEP


git branch --no-merged  OÍP UFSÓBNPT OFOIVNB SFTQPTUB
JOEJDBOEPRVFOÍPIÈOFOIVNBCSBODIOÍPNFTDMBEB

/PUF RVF  EFQPJT EP NFSHF  P BSRVJWP principal.css  GPJ


SFNPWJEPFBTBMUFSBÎÜFTRVFUÓOIBNPTSFBMJ[BEPFN index.html
GPSBN USB[JEBT QBSB B OPTTB CSBODI BUVBM  B master  0CTFSWF
UBNCÏNRVFPTUFYUPTEPCBOOFSRVFNPEJGJDBNPTDPOUJOVBNMÈ
4FOÍPUJWÏTTFNPTJOGPSNBEPVNBNFOTBHFNBUSBWÏTEBPQÎÍP -
m TFSJBBCFSUPVNFEJUPSEFUFYUP

²JNQPSUBOUFTBCFSRVF RVBOEPÏFGFUVBEPVNNFSHF ÏDSJBEP


VNOPWPDPNNJUDPNBTBMUFSBÎÜFTRVFFTUBNPTNFTDMBOEPFDPN
B NFOTBHFN RVF JOGPSNBNPT 1PEFNPT WFSJGJDBS FTTF OPWP
DPNNJU EF NFSHF FYFDVUBOEP P DPNBOEP git log -n 4 --
oneline --decorate --parents 5FSÓBNPTOBTBÓEB

e6b2f35 2223859 8f53065 (HEAD, master) Mesclando com a branch


design
2223859 b92285b Alterando textos do banner
8f53065 b92285b (design) Adicionando Bootstrap
b92285b a5b9fce Revert "Adicionando texto peculiar"

0CTFSWF RVF B CSBODI master  F P HEAD  BQPOUBN QBSB P


DPNNJU EF NFSHF  RVF Ï P ÞMUJNP DPNNJU SFBMJ[BEP  F RVF UFN P
DØEJHP e6b2f35  F B NFOTBHFN RVF IBWÓBNPT JOGPSNBEP +È B
CSBODI design DPOUJOVBBQPOUBOEPQBSBPNFTNPDPNNJURVF
FTUBWBBOUFSJPSNFOUF

² JNQPSUBOUF OPUBS RVF P DPNNJU EF NFSHF e6b2f35


 UFN
EPJTDPNNJUTQBJPDPNNJU 2223859  EF NFOTBHFN "MUFSBOEP

116 6.7 MESCLANDO ALTERAÇÕES


E-book gerado especialmente para Hugo Hiroshi - [email protected]
UFYUPT EP CBOOFS  F P DPNNJU 8f53065  EF NFOTBHFN
"EJDJPOBOEP#PPUTUSBQ

7JTVBMJ[BOEPPFTUBEPEPOPTTPSFQPTJUØSJPEFQPJTEPNFSHFEB
CSBODI design OBCSBODI master UFSÓBNPT

'JHVSB.FSHFEFEFTJHOOBNBTUFS

6.7 MESCLANDO ALTERAÇÕES 117


E-book gerado especialmente para Hugo Hiroshi - [email protected]
)È VNB TJUVBÎÍP FN RVF VN git merge  OÍP HFSBSÈ VN
DPNNJU EF NFSHF RVBOEP B CSBODI EF EFTUJOP OÍP UFWF
OFOIVNDPNNJUBNBJTEFTEFRVFBCSBODIBTFSNFTDMBEBGPJ
DSJBEB

/P OPTTP DBTP  TF OÍP UJWÏTTFNPT GFJUP P DPNNJU 2223859


"MUFSBOEP UFYUPT EP CBOOFS
 OB CSBODI master  P NFSHF
DPNBCSBODI design TFSJBCBTJDBNFOUFBQPOUBSB master
QBSB POEF B design  BQPOUB P DPNNJU 8f53065
"EJDJPOBOEP#PPUTUSBQ


&TTF UJQP EF NFSHF Ï DIBNBEP EF GBTUGPSXBSE ² QPTTÓWFM


FWJUBS P VTP EF GBTUGPSXBSE  GPSÎBOEP B DSJBÎÍP EF VN
DPNNJUEFNFSHF VUJMJ[BOEPBPQÎÍP --no-ff EPDPNBOEP
git merge 

.FTDMBOEPBMUFSBÎÜFTDPNSFCBTF
®NFEJEBRVFVNBBQMJDBÎÍPWBJTFOEPEFTFOWPMWJEB ÏOBUVSBM
JTPMBSNPT QBSUFT EP USBCBMIP FN CSBODIFT & RVBOEP BMHP FTUJWFS
QSPOUP  TFSÈ GFJUP VN NFSHF EP DØEJHP F  QPS JTTP  UFSFNPT VN
OPWPDPNNJUEFNFSHF

1BSB QSPKFUPT DPN NVJUBT CSBODIFT F NVJUPT NFSHFT  P


IJTUØSJDP EP SFQPTJUØSJP GJDBSÈ SFQMFUP EF DPNNJUT EF NFSHF *TTP
QPEFUPSOBSCBTUBOUFUSBCBMIPTBTUBSFGBTDPNPSFWJTÍPEFDØEJHP

)È VNB NBOFJSB BMUFSOBUJWB EF NFTDMBS BT BMUFSBÎÜFT EF EVBT
CSBODIFTRVFTJNQMJGJDBPIJTUØSJDPEPQSPKFUP$POTJEFSBOEPRVF
FTUBNPT OB CSBODI master  FN WF[ EF VUJMJ[BS git merge  Ï

118 6.7 MESCLANDO ALTERAÇÕES


E-book gerado especialmente para Hugo Hiroshi - [email protected]
QPTTÓWFMVTBS
$ git rebase design

/BTBÓEB EFWFBQBSFDFSBMHPDPNP
First, rewinding head to replay your work on top of it...
Applying: Alterando textos do banner

1SPOUP 0VUSB NBOFJSB EF UFSNPT BT NVEBOÎBT NFTDMBEBT "


SFTQPTUB EP DPNBOEP git branch --no-merged  TFSJB WB[JB  KÈ
RVFOÍPIÈOFOIVNBCSBODIOÍPNFTDMBEB

"T NFOTBHFOT BOUFSJPSFT JOGPSNBN RVF P SFQPTJUØSJP GPJ


SFCPCJOBEPFOPTTPUSBCBMIPSFGFJUP

/P OPTTP DBTP  P SFQPTJUØSJP WPMUPV BP FTUBEP RVF FTUBWB BP


DSJBSNPTBCSBODI design BQBSUJSEB master %FQPJTEJTTP GPJ
BQMJDBEP P DPNNJU RVF GJ[FNPT OB CSBODI design  'JOBMNFOUF
GPJBQMJDBEPPOPTTPÞMUJNPDPNNJUOB master BTBMUFSBÎÜFTOP
UFYUPEPTCBOOFST

"P WFSJGJDBSNPT P IJTUØSJDP EP OPTTP SFQPTJUØSJP DPN P


DPNBOEP git log -n 3 --oneline --decorate --parents
UFSÓBNPT
c05c05a 8f53065 (HEAD, master) Alterando textos do banner
8f53065 b92285b (design) Adicionando Bootstrap
b92285b a5b9fce Revert "Adicionando texto peculiar"

" CSBODI design  DPOUJOVB BQPOUBOEP QBSB P DPNNJU RVF


FTUBWB BOUFSJPSNFOUF +È B CSBODI master  UFWF TFV IJTUØSJDP
SFGFJUPGPJDSJBEPVNOPWPDPNNJUDPNBTBMUFSBÎÜFTOPUFYUPEPT
CBOOFST DPNDØEJHP c05c05a 

0CTFSWF RVF P QBJ EP OPWP DPNNJU c05c05a  "MUFSBOEP

6.7 MESCLANDO ALTERAÇÕES 119


E-book gerado especialmente para Hugo Hiroshi - [email protected]
UFYUPTEPCBOOFS
ÏPDPNNJU 8f53065  "EJDJPOBOEP#PPUTUSBQ

RVF UÓOIBNPT GFJUP OB CSBODI EFTJHO 1FSDFCB RVF OÍP IPVWF
DPNNJUEFNFSHF0IJTUØSJDPEFDPNNJUTGPJMJOFBSJ[BEP

$PMPDBOEPPFTUBEPEPOPTTPSFQPTJUØSJPBQØTPSFCBTFFNVN
HSÈGJDP UFSÓBNPT

'JHVSB3FCBTFEFEFTJHOOBNBTUFS

/P DBTP EF VN GBTUGPSXBSE  CBTUB BQPOUBS B CSBODI EF


EFTUJOPQBSBPDPNNJUNBJTOPWPEBCSBODITFOEPNFTDMBEB

/P OPTTP DBTP  TF OÍP UJWÏTTFNPT OFOIVN OPWP DPNNJU OB


CSBODI master  B NFTDMBHFN TFSJB GFJUB BQPOUBOEP B
master  QBSB P NFTNP DPNNJU QBSB P RVBM B design
BQPOUB %FTTB GPSNB  P SFCBTF OÍP QSFDJTBSJB SFFTDSFWFS P
IJTUØSJDPEFDPNNJUT

1PSJTTP P git merge FP git rebase UÐNPNFTNPFGFJUP


RVBOEPIÈVNGBTUGPSXBSE

.BOUFOEP P IJTUØSJDP EB NBTUFS JOUBDUP BQØT VN

120 6.7 MESCLANDO ALTERAÇÕES


E-book gerado especialmente para Hugo Hiroshi - [email protected]
SFCBTF
&WJUBS BP NÈYJNP BMUFSBÎÜFT OP IJTUØSJDP EB master  Ï VNB
QSÈUJDBCBTUBOUFBEPUBEBQPSVTVÈSJPTEP(JU1PSÏN OPTTPSFCBTF
BOUFSJPS BDBCPV EFJYBOEP PCTPMFUP P DPNNJU 2223859
"MUFSBOEP UFYUPT EP CBOOFS
 TVCTUJUVJOEPP QFMP DPNNJU
c05c05a RVFUFNPNFTNPDPOUFÞEP

1PEFSÓBNPT UFS GFJUP B JOUFHSBÎÍP EBT CSBODIFT master  F


design  DPN SFCBTF  EF NBOFJSB B EFJYBS master  JOUBDUB TF
UJWÏTTFNPT GFJUP OPTTP USBCBMIP EF VNB NBOFJSB MJHFJSBNFOUF
EJGFSFOUF

1SJNFJSBNFOUF  UFSÓBNPT EF QBTTBS QBSB B CSBODI design


DPN P DPNBOEP git checkout design  &OUÍP  GBSÓBNPT P
SFCBTF EB CSBODI master  OB design  DPN P DPNBOEP git
rebase master  "QØT P SFCBTF  P DPNNJU 8f53065
"EJDJPOBOEP #PPUTUSBQ
 EB CSBODI design  GPJ TVCTUJUVÓEP
EJHBNPT QFMPDPNNJUEFDØEJHP e887c10 

7JTVBMJ[BOEP HSBGJDBNFOUF OPTTP SFQPTJUØSJP OFTTF NPNFOUP


UFSÓBNPT

6.7 MESCLANDO ALTERAÇÕES 121


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB3FCBTFEFNBTUFSOBEFTJHO

²DPNPTFSFGJ[ÏTTFNPTPDPNNJUCBTFEBCSBODI design  P
DPNNJU EB CSBODI master  RVF Ï BODFTUSBM EP DPNNJU RVF
GJ[FNPTFN design  FEFUPEPTRVFWJSÍP


"OUFT EP SFCBTF  P DPNNJU CBTF FSB P EF DØEJHP b92285b


3FWFSU "EJDJPOBOEP UFYUP QFDVMJBS
 %FQPJT RVF P SFCBTF GPJ
FYFDVUBEP  P DPNNJU CBTF QBTTPV B TFS P ÞMUJNP DPNNJU EB
master EFDØEJHP 2223859  "MUFSBOEPUFYUPTEPCBOOFS


0OPNFSFCBTFWFNEBJEFJBEFSFGB[FSPDPNNJUCBTFEFVNB
CSBODI1BSBJTTP P(JUQSFDJTBDSJBSOPWPTDPNNJUT NVEBOEPPT
BODFTUSBJTEFDPNNJUTBOUFSJPSFT

$PN B CBTF EB CSBODI design  SFGFJUB  Ï QPTTÓWFM GB[FS VN


NFSHFEPUJQPGBTUGPSXBSEEB design OBCSBODI master 1BSB
UBM  EFWFSÓBNPT JS QBSB B master  FYFDVUBOEP git checkout
master &OUÍP GBSÓBNPTVN git merge design 

0HSÈGJDPEPSFQPTJUØSJPGJDBSJBQBSFDJEPDPN

122 6.7 MESCLANDO ALTERAÇÕES


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB.FSHFGBTUGPSXBSEEFEFTJHOOBNBTUFS BQØTPSFCBTF

1BSBTBCFSNBJTRVBMVTBS 6NNFSHFPVVNSFCBTF
6UJMJ[BSNFSHFNBOUÏNVNSFHJTUSPGJFMEPRVFPDPSSFVDPNP
OPTTP SFQPTJUØSJP  NBT PT DPNNJUT EF NFSHF DPNQMJDBN UBSFGBT
DPNPOBWFHBSQFMPDØEJHPBOUJHPFSFWJTBSDØEJHPOPWP

+È P SFCBTF TJNQMJGJDB P IJTUØSJDP  NBT QFSEFNPT JOGPSNBÎÍP


TPCSF OPTTP SFQPTJUØSJP F BMHVOT DPNNJUT TÍP SFFTDSJUPT /P DBTP
EFDPOGMJUPT BTDPJTBTQPEFNGJDBSFTQFDJBMNFOUFDPNQMJDBEBT

/ÍP IÈ VNB SFTQPTUB TJNQMFT TPCSF B NBOFJSB JEFBM EF


NFTDMBSNPT BMUFSBÎÜFT DPN (JU $BEB TPMVÎÍP UFN TFVT QSØT F
DPOUSBT

"P USBCBMIBSNPT DPN CSBODIFT SFNPUBT  OPTTP QSØYJNP


BTTVOUP TVSHFNOPWBTRVFTUÜFT

6.7 MESCLANDO ALTERAÇÕES 123


E-book gerado especialmente para Hugo Hiroshi - [email protected]
CAPÍTULO 7

53"#"-)"/%0&.
&26*1&$0.#3"/$)&4
3&.05"4

/B EJB B EJB  EJGJDJMNFOUF USBCBMIBNPT TP[JOIPT /P DBQÓUVMP


5SBCBMIBOEP DPN SFQPTJUØSJP SFNPUP  WJNPT DPNP USBCBMIBS DPN
SFQPTJUØSJPT SFNPUPT F  OP DBQÓUVMP )PTQFEBOEP P SFQPTJUØSJP OP
(JU)VC DPNPVUJMJ[BSP(JU)VC PRVFOPTQFSNJUFUSBCBMIBSFN
FRVJQFEFNBOFJSBDPOTJTUFOUF

5SBCBMIBSDPNCSBODIFT RVFWJNPTOPDBQÓUVMP0SHBOJ[BOEPP
USBCBMIPDPNCSBODIFT UBNCÏNÏVNBCPBNBOFJSBEFPSHBOJ[BSP
USBCBMIP FN FRVJQF .BT RVBOEP USBCBMIBNPT DPN SFQPTJUØSJPT
SFNPUPT TVSHFNOPWBTQSFPDVQBÎÜFT

-FNCSBOEPEPTSFQPTJUØSJPTSFNPUPT
/POPTTPSFQPTJUØSJPMPDBM moveis UFNPTPSFNPUF origin
RVF BQPOUB QBSB P (JU)VC  P RVF QPEFNPT WFSJGJDBS DPN P
DPNBOEP git remote -v 
origin [email protected]:fulanodasilva/moveis-ecologicos.git
(fetch)
origin [email protected]:fulanodasilva/moveis-ecologicos.git
(push)

124 7 TRABALHANDO EM EQUIPE COM BRANCHES REMOTAS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
0SFNPUF origin  FTUÈ BQPOUBOEP QBSB VN SFQPTJUØSJP MÈ EP
(JU)VC  RVF UBNCÏN UFN TVB CSBODI master  1SFDJTBNPT EF
VNBNBOFJSBEFSFDFCFSFFOWJBSDPNNJUTQBSBBCSBODI master
EP(JU)VC

#3"/$)&43&.05"4
/P(JU UFNPTCSBODIFTSFNPUBT RVF BQPOUBN QBSB CSBODIFT
RVFFTUÍPOPTSFQPTJUØSJPTSFNPUPTDPOGJHVSBEPT1BSBEJGFSFODJÈ
MBTEBTCSBODIFTMPDBJT POPNFEFVNBCSBODISFNPUBÏPOPNF
EP SFNPUF TFHVJEP EP OPNF EB CSBODI /P OPTTP DBTP  B CSBODI
master MÈEP(JU)VCUFNPOPNFEF origin/master KÈRVFP
SFNPUF origin BQPOUBQBSBP(JU)VC

"P DPOUSÈSJP EF CSBODIFT MPDBJT  RVF TÍP NPWJEBT B DBEB


DPNNJU CSBODIFTSFNPUBTTØTÍPNPWJEBTBPGB[FSNPTPQFSBÎÜFT
RVFFOWPMWBNDPNVOJDBÎÍPEFSFEF DPNP git push  git pull
F UBNCÏN P DPNBOEP git fetch  RVF WFSFNPT NBJT BEJBOUF
1PSUBOUP VNBCSBODISFNPUBSFQSFTFOUBBTJUVBÎÍPEBÞMUJNBWF[
RVFIPVWFDPNVOJDBÎÍPDPNPSFQPTJUØSJPSFNPUP

1PEFNPTMJTUBSBTCSBODIFTSFNPUBTQBTTBOEPBPQÎÍP -r QBSB
PDPNBOEP git branch 
$ git branch -r

5FSFNPTOBTBÓEB
origin/master

Se quisermos mostrar tanto as branches locais como as remotas, po


demos
utilizar o comando `git branch -a`.

1BSB WFSNPT QBSB RVBJT DPNNJUT BT CSBODIFT SFNPUBT FTUÍP

7.1 BRANCHES REMOTAS 125


E-book gerado especialmente para Hugo Hiroshi - [email protected]
BQPOUBOEP QPEFNPTVTBSPDPNBOEPBOUFSJPSDPNBPQÎÍP -v 
$ git branch -r -v

5FSFNPT
origin/master b92285b Revert "Adicionando texto peculiar"

0CTFSWF RVF B CSBODI origin/master  FTUÈ BQPOUBOEP P


DPNNJU EF DØEJHP b92285b  3FWFSU "EJDJPOBOEP UFYUP
QFDVMJBS


$POTJEFSBOEPRVFGJ[FNPTPNFSHFEBCSBODI master DPNB


CSBODI design  OP SFQPTJUØSJP MPDBM OP DBQÓUVMP BOUFSJPS  BP
FYFDVUBSNPTPDPNBOEP git log -n 4 --oneline --decorate
--parents UFSÓBNPT

e6b2f35 2223859 8f53065 (HEAD, master) Mesclando com a branch


design
2223859 b92285b Alterando textos do banner
8f53065 b92285b (design) Adicionando Bootstrap
b92285b a5b9fce (origin/master) Revert "Adicionando texto
peculiar"

0CTFSWF RVF B CSBODI origin/master  BQPOUB QBSB VN


DPNNJUBOUFSJPSËTCSBODIFT master F origin  EP SFQPTJUØSJP
MPDBM

&YJCJOEP HSÈGJDPT DPN P SFQPTJUØSJP MÈ EP (JU)VC F P


SFQPTJUØSJPMPDBM DBEBVNDPNTVBTCSBODIFT GJDBSÓBNPTDPNBMHP
QBSFDJEPDPN

126 7.1 BRANCHES REMOTAS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB0SFQPTJUØSJPEP(JU)VCOÍPDPOUÏNBCSBODIEFTJHO BQFOBTBTVBNBTUFS

'JHVSB3FQPTJUØSJPMPDBMUFNBTCSBODIFTMPDBJTNBTUFSFEFTJHOFBSFNPUBPSJHJONBTUFS

/PGJNEBTDPOUBT UBOUPBCSBODI master MÈEP(JU)VCDPNP


B OPTTB CSBODI origin/master  BQPOUBN QBSB P DPNNJU EF
DØEJHP b92285b  3FWFSU"EJDJPOBOEPUFYUPQFDVMJBS


$0.1"35*-)"/%0#3"/$)&4
" CSBODI design  BJOEB OÍP FYJTUF MÈ OP (JU)VC 1BSB
DPNQBSUJMIÈMB  EFWFNPT JOGPSNBS PT OPNFT EP SFNPUF F EB
CSBODIQBSBPDPNBOEP git push 
$ git push origin design

%FWFSÈBQBSFDFSVNBSFTQPTUBQBSFDJEBDPN

7.2 COMPARTILHANDO BRANCHES 127


E-book gerado especialmente para Hugo Hiroshi - [email protected]
Counting objects: 5, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 669 bytes | 0 bytes/s, done.
Total 3 (delta 1), reused 0 (delta 0)
To [email protected]:fulanodasilva/moveis-ecologicos.git
* [new branch] design -> design

0DPNBOEPBOUFSJPSFOWJBQBSBPSFNPUF origin PTDPNNJUT


EBCSBODI design %FQPJTEJTTP QPEFNPTWFSBCSBODI design
OBQÈHJOBEPOPTTPQSPKFUPOP(JU)VC

5BNCÏN QPEFNPT WFS VN HSÈGJDP EBT CSBODIFT EP


SFQPTJUØSJPOB63-IUUQTHJUIVCDPNGVMBOPEBTJMWBNPWFJT
FDPMPHJDPTOFUXPSL OÍPFTRVFÎB EFUSPDBS fulanodasilva
QFMPTFVVTVÈSJP

/FTTFNPNFOUP TFMJTUBSNPTBTCSBODIFTSFNPUBTFMPDBJTDPN
PDPNBOEP git branch -a -v UFSÓBNPT
design 8f53065 Adicionando Bootstrap
* master e6b2f35 Mesclando com a branch design
remotes/origin/design 8f53065 Adicionando Bootstrap
remotes/origin/master b92285b Revert "Adicionando texto
peculiar"

0CTFSWFRVFUFNPTBTCSBODIFTMPDBJT master F design FBT


CSBODIFTSFNPUBT origin/master F origin/design 

$PNP BDBCBNPT EF GB[FS P git push  EB CSBODI


origin/design  FTTB CSBODI SFNPUB F B CSBODI MPDBM design
FTUÍP BQPOUBOEP QBSB P DPNNJU EF DØEJHP 8f53065
"EJDJPOBOEP #PPUTUSBQ
 +È B CSBODI MPDBM master  F B SFNPUB
origin/master FTUÍPBQPOUBOEPQBSBDPNNJUTEJGFSFOUFT

128 7.2 COMPARTILHANDO BRANCHES


E-book gerado especialmente para Hugo Hiroshi - [email protected]
$PMPDBOEP P FTUBEP BUVBM EPT OPTTPT SFQPTJUØSJPT MPDBM F EP
(JU)VCFNHSÈGJDPT UFSÓBNPT

'JHVSB#SBODIEFTJHOOP(JU)VC

'JHVSB#SBODISFNPUBPSJHJOEFTJHOOPSFQPTJUØSJPNPWFJT

 0#5&/%0 /07"4 #3"/$)&4 3&.05"4


&.0653043&104*5»3*04
1BSBTJNVMBSVNPVUSPNFNCSPEPOPTTPUJNF WBNPTCBJYBSP
SFQPTJUØSJPFNVNBPVUSBQBTUB

7.3 OBTENDO NOVAS BRANCHES REMOTAS EM OUTROS REPOSITÓRIOS 129


E-book gerado especialmente para Hugo Hiroshi - [email protected]
1SJNFJSBNFOUF  EFWFNPT WPMUBS Ë OPTTB QBTUB QFTTPBM
FYFDVUBOEP cd ~ 

&OUÍP  WBNPT DMPOBS P SFQPTJUØSJP FN VN EJSFUØSJP DIBNBEP


outro  FYFDVUBOEP P DPNBOEP git clone
[email protected]:fulanodasilva/moveis-ecologicos.git
outro 

%FQPJT EF DMPOBS P SFQPTJUØSJP  Ï JNQPSUBOUF FOUSBS OP


EJSFUØSJP DPNPDPNBOEP cd outro 

4FMJTUBSNPTBTCSBODIFTMPDBJTFSFNPUBTDPNPDPNBOEP git
branch -a -v UFSFNPT

* master b92285b Revert "Adicionando texto


peculiar"
remotes/origin/design 8f53065 Adicionando Bootstrap
remotes/origin/master b92285b Revert "Adicionando texto
peculiar"

/PUF RVF UFNPT B CSBODI MPDBM master  F BT SFNPUBT


origin/master  F origin/design  1PSÏN  OÍP UFNPT BJOEB
VNBCSBODIMPDBM design 4FQSFDJTBSNPTUSBCBMIBSOFTTBCSBODI
OP OPWP SFQPTJUØSJP outro  QSFDJTBNPT FYFDVUBS P TFHVJOUF
DPNBOEP
$ git checkout -b design origin/design

0DPNBOEPBQSFTFOUBSÈOBTBÓEBBMHPDPNP
Branch design set up to track remote branch design from origin
by rebasing.
Switched to a new branch 'design'

$PNPDPNBOEPBOUFSJPS GJ[FNPTVN git checkout EFVNB


OPWB CSBODI MPDBM DIBNBEB design  B QBSUJS EB CSBODI SFNPUB
origin/design "HPSBFTUBNPTQSPOUPTQBSBUSBCBMIBSOPEFTJHO

130 7.3 OBTENDO NOVAS BRANCHES REMOTAS EM OUTROS REPOSITÓRIOS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
EBBQMJDBÎÍP TFRVJTFSNPT

#SBODIFT MPDBJT DSJBEBT B QBSUJS EF CSBODIFT SFNPUBT TÍP


DIBNBEBTEFUSBDLJOHCSBODIFT

4FFYFDVUBSNPT git branch -a -v OPWBNFOUF UFSFNPT


* design 8f53065 Adicionando Bootstrap
master b92285b Revert "Adicionando texto
peculiar"
remotes/origin/design 8f53065 Adicionando Bootstrap
remotes/origin/master b92285b Revert "Adicionando texto
peculiar"

6NB PVUSB NBOFJSB  NBJT TVDJOUB  EF DSJBS VNB USBDLJOH


CSBODIÏVUJMJ[BSBPQÎÍP -t EPDPNBOEP git checkout 

/P OPTTP DBTP  GBSÓBNPT git checkout -t


origin/design  4FSJB DSJBEB MPDBMNFOUF B USBDLJOH CSBODI
design SFMBDJPOBEBDPNBCSBODISFNPUB origin/design 

%FQPJT EF DSJBEB B USBDLJOH CSBODI design  OP SFQPTJUØSJP


outro  PT SFQPTJUØSJPT NPWFJT F P EP (JU)VC FTUBSJBN
JOBMUFSBEPT

4FWJTVBMJ[BSNPTPSFQPTJUØSJP outro UFSÓBNPT

7.3 OBTENDO NOVAS BRANCHES REMOTAS EM OUTROS REPOSITÓRIOS 131


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB5SBDLJOHCSBODIEFTJHOOPSFQPTJUØSJPPVUSP

 &/7*"/%0 $0..*54 1"3" 0


3&104*5»3*0$&/53"-
7BNPT WPMUBS QBSB OPTTP EJSFUØSJP moveis  FYFDVUBOEP P
DPNBOEP cd ~/moveis 

/PTTP SFQPTJUØSJP moveis  FTUÈ EPJT DPNNJUT OB GSFOUF EB


CSBODI SFNPUB origin/master  1PEFNPT WFSJGJDBS JTTP
FYFDVUBOEP git status 
On branch master
Your branch is ahead of 'origin/master' by 2 commits.
(use "git push" to publish your local commits)

nothing to commit, working directory clean

4F FYFDVUBSNPT git log -n 4 --oneline --decorate


UFSFNPT
e6b2f35 (HEAD, master) Mesclando com a branch design
2223859 Alterando textos do banner
8f53065 (origin/design, design) Adicionando Bootstrap
b92285b (origin/master) Revert "Adicionando texto peculiar"

132 7.4 ENVIANDO COMMITS PARA O REPOSITÓRIO CENTRAL


E-book gerado especialmente para Hugo Hiroshi - [email protected]
&OUÍP  QBSB FOWJBS BT BMUFSBÎÜFT OB CSBODI master  QBSB P
SFQPTJUØSJPSFNPUP EFWFNPTGB[FS
$ git push origin master

5FSFNPTDPNPSFTQPTUBBMHPDPNP
Counting objects: 10, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (6/6), 670 bytes | 0 bytes/s, done.
Total 6 (delta 3), reused 0 (delta 0)
To [email protected]:fulanodasilva/moveis-ecologicos.git
b92285b..e6b2f35 master -> master

%FQPJTEJTTP BCSBODI master FB origin/master  FTUBSÍP


BQPOUBOEPQBSBPDPNNJUEFNFSHF e6b2f35  .FTDMBOEPDPNB
CSBODI EFTJHO
 ² QPTTÓWFM OPT DFSUJGJDBSNPT EJTTP  FYFDVUBOEP
git log -n 4 --oneline --decorate OPWBNFOUF5FSÓBNPT

e6b2f35 (HEAD, origin/master, master) Mesclando com a branch


design
2223859 Alterando textos do banner
8f53065 (origin/design, design) Adicionando Bootstrap
b92285b Revert "Adicionando texto peculiar"

+È OP SFQPTJUØSJP outro  B CSBODI master  BJOEB DPOUJOVB


BQPOUBOEPQBSBPDPNNJU b92285b  3FWFSU "EJDJPOBOEP UFYUP
QFDVMJBS
FBCSBODI design DPOUJOVBBQPOUBOEPQBSBPDPNNJU
8f53065  "EJDJPOBOEP#PPUTUSBQ


0 SFQPTJUØSJP outro  OÍP TPGSFV BMUFSBÎÜFT +È VNB


WJTVBMJ[BÎÍP EP FTUBEPT EP SFQPTJUØSJPT moveis  F EP (JU)VC
TFSJB

7.4 ENVIANDO COMMITS PARA O REPOSITÓRIO CENTRAL 133


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB$PNNJUTEFNPWFJTGPSBNSFDFCJEPTQFMPSFQPTJUØSJPEP(JU)VC

'JHVSB#SBODIPSJHJONBTUFSGPJBUVBMJ[BEBOPSFQPTJUØSJPNPWFJT

 0#5&/%0 $0..*54 %& 6." #3"/$)


3&.05"

6NOPWPDPNNJU
%JHBNPT RVF PVUSP EFTFOWPMWFEPS EB OPTTB FRVJQF FTUFKB
USBCBMIBOEP FN VNB QÈHJOB RVF MJTUB NØWFJT GFJUPT B QBSUJS EF
HBSSBGBT 1&5 5PEP USBCBMIP FTUÈ TFOEP GFJUP EJSFUBNFOUF OB

134 7.5 OBTENDO COMMITS DE UMA BRANCH REMOTA


E-book gerado especialmente para Hugo Hiroshi - [email protected]
CSBODI master 

1BSB TJNVMBS FTTF PVUSP EFTFOWPMWFEPS  WBNPT VTBS OPTTP


SFQPTJUØSJP outro 3FUPSOBSFNPTBFTTFSFQPTJUØSJP FYFDVUBOEPP
DPNBOEP cd ~/outro &OUÍP WBNPTOPTDFSUJGJDBSRVFFTUBNPT
OBCSBODI master FYFDVUBOEP git checkout master 

'FJUPJTTP WBNPTDSJBSVNBSRVJWP moveis_pet.html DPNP


TFHVJOUFDPOUFÞEP
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="description"
content="Móveis ecológicos PET">
<meta name="keywords" content="moveis ecologicos pet">
<link rel="stylesheet" href="principal.css">
<title>Móveis Ecológicos de garrafas PET</title>
</head>
<body>
<h1>Móveis Ecológicos S. A.</h1>
<h2>Móveis de Garrafas PET</h2>
<p>Funcionais, baratos e amigos do meio ambiente.</p>
<ul>
<li>Sofás</li>
<li>Racks</li>
<li>Cadeiras</li>
<li>Mesas</li>
</ul>
</body>
</html>

$PN P BSRVJWP moveis_pet.html  DSJBEP  WBNPT SBTUSFÈMP


DPN git add moveis_pet.html  F HSBWÈMP OP SFQPTJUØSJP DPN
git commit -m "Adicionando página sobre móveis PET" 4F
NPTUSBNPTPIJTUØSJDPEPSFQPTJUØSJPOFTTFQPOUPDPN git log -
n 2 --oneline --decorate UFSÓBNPT

e1b10ff (HEAD, master) Adicionando página sobre móveis PET

7.5 OBTENDO COMMITS DE UMA BRANCH REMOTA 135


E-book gerado especialmente para Hugo Hiroshi - [email protected]
b92285b (origin/master) Revert "Adicionando texto peculiar"

3FQBSFRVFBCSBODI origin/master EPSFQPTJUØSJP outro


FTUÈOPDPNNJU b92285b  3FWFSU "EJDJPOBOEP UFYUP QFDVMJBS

BQFTBSEBCSBODI master MÈEP(JU)VCFTUBSBMHVOTDPNNJUTOB
GSFOUF OPDPNNJU e6b2f35  .FTDMBOEPDPNBCSBODIEFTJHO


0SFQPTJUØSJP moveis  F P EP (JU)VC DPOUJOVBSBN JHVBJT +È


TF WJTVBMJ[BSNPT P FTUBEP EP SFQPTJUØSJP outro  BQØT P DPNNJU
UFSÓBNPT

'JHVSB#SBODINBTUFSEPSFQPTJUØSJPPVUSPBQPOUBOEPQBSBPOPWPDPNNJU

5SB[FOEP DPNNJUT EF VN SFQPTJUØSJP SFNPUP DPN


GFUDI
1BSBPCUFSNPTPTDPNNJUTEBCSBODISFNPUB origin/master
OPOPTTPSFQPTJUØSJP outro QPEFNPTFYFDVUBSPDPNBOEP
$ git fetch origin

5FSFNPTDPNPSFTQPTUBBMHPDPNP
remote: Counting objects: 6, done.

136 7.5 OBTENDO COMMITS DE UMA BRANCH REMOTA


E-book gerado especialmente para Hugo Hiroshi - [email protected]
remote: Compressing objects: 100% (5/5), done.
remote: Total 6 (delta 1), reused 0 (delta 0)
Unpacking objects: 100% (6/6), done.
From github.com:fulanodasilva/moveis-ecologicos
b92285b..e6b2f35 master -> origin/master

$PN P DPNBOEP git fetch  USB[FNPT PT DPNNJUT EF VNB


CSBODISFNPUBRVFBJOEBOÍPFTUBWBNQSFTFOUFTMPDBMNFOUF

/P OPTTP DBTP  PCUFNPT PT DPNNJUT 2223859  "MUFSBOEP


UFYUPTEPCBOOFS
F e6b2f35  .FTDMBOEP DPN B CSBODI EFTJHO

RVF FTUBWBN MÈ OP (JU)VC  NBT BJOEB OÍP FTUBWBN OB CSBODI
origin/master  1PSÏN  PT OPWPT DPNNJUT EB CSBODI SFNPUB
origin/master  BJOEB OÍP GPSBN BQMJDBEPT OB CSBODI MPDBM
master  P RVF QPEFNPT DPOTUBUBS FYFDVUBOEP P DPNBOEP git
branch -a -v 

design 8f53065 Adicionando Bootstrap


* master e1b10ff Adicionando página sobre móveis
PET
remotes/origin/design 8f53065 Adicionando Bootstrap
remotes/origin/master e6b2f35 Mesclando com a branch design

0CTFSWFRVFBCSBODI master BJOEBDPOUJOVBBQPOUBOEPQBSB


PDPNNJU e1b10ff  "EJDJPOBOEP QÈHJOB TPCSF NØWFJT 1&5
 ²
JNQPSUBOUFOPUBSRVFPTOPWPTDPNNJUTBJOEBOÍPGPSBNBQMJDBEPT
BQØTFYFDVUBSNPTP git fetch 

%FQPJT EF PCUFS PT DPNNJUT EB CSBODI origin/master  P


HSÈGJDPEPSFQPTJUØSJP outro GJDBSJB

7.5 OBTENDO COMMITS DE UMA BRANCH REMOTA 137


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB$PNNJUTSFNPUPTPCUJEPTOBCSBODIPSJHJONBTUFSEFPVUSP

 .&4$-"/%0 #3"/$)&4 3&.05"4 &


-0$"*4

.FTDMBOEPCSBODIFTSFNPUBTFMPDBJTDPNNFSHF
/P SFQPTJUØSJP outro  UFNPT BMHVOT DPNNJUT OB CSBODI
SFNPUB origin/master RVFBJOEBOÍPGPSBNBQMJDBEPTOBCSBODI
master  $PNP GB[FS QBSB NFTDMBS BT EVBT CSBODIFT  4FSÈ RVF
NFTDMBS VNB CSBODI SFNPUB B VNB MPDBM QSFDJTB EF BMHVN
DPNBOEPFTQFDJBM

/ÍP #BTUB VTBSNPT VNB EBT EVBT NBOFJSBT EF NFTDMBS


CSBODIFTOP(JUVNNFSHFPVVNSFCBTF

4F FTDPMIFSNPT GB[FS VN NFSHF F FTUJWFSNPT OB CSBODI

138 7.6 MESCLANDO BRANCHES REMOTAS E LOCAIS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
master CBTUBFYFDVUBSNPT

$ git merge origin/master -m "Mesclando origin/master em master"

4F OÍP JOGPSNBSNPT VNB NFOTBHFN QBSB P DPNNJU EF


NFSHF TFSÈBCFSUPVNFEJUPSEFUFYUP

/BTBÓEB UFSÓBNPT
Removing principal.css
Merge made by the 'recursive' strategy.
index.html | 29 +++++++++++++++++++++--------
js/principal.js | 2 +-
principal.css | 11 -----------
3 files changed, 22 insertions(+), 20 deletions(-)
delete mode 100644 principal.css

1SPOUP +È UFNPT BT NVEBOÎBT MÈ EP (JU)VC BQMJDBEBT OB


CSBODIMPDBM master EPSFQPTJUØSJP outro 

4FFYFDVUBSNPT git log -n 6 --oneline --decorate --


parents UFSFNPT

550e27d e1b10ff e6b2f35 (HEAD, master) Mesclando origin/master


em master
e1b10ff b92285b Adicionando página sobre móveis PET
e6b2f35 2223859 8f53065 (origin/master) Mesclando com a branch
design
2223859 b92285b Alterando textos do banner
8f53065 b92285b (origin/design, design) Adicionando Bootstrap
b92285b a5b9fce Revert "Adicionando texto peculiar"

7.6 MESCLANDO BRANCHES REMOTAS E LOCAIS 139


E-book gerado especialmente para Hugo Hiroshi - [email protected]
4F OÍP IPVWFTTF OFOIVN OPWP DPNNJU OB CSBODI MPDBM
master  EP SFQPTJUØSJP outro  B master  UFSJB VN GBTU
GPSXBSE  TFOEP TJNQMFTNFOUF NPWJEB QBSB BQPOUBS QBSB P
NFTNPDPNNJUEBCSBODISFNPUB origin/master 

/FOIVNBBMUFSBÎÍPUFSJBBDPOUFDJEPOPSFQPTJUØSJP moveis F
EP(JU)VC"HPSB VNHSÈGJDPEPIJTUØSJDPBOUFSJPSEPSFQPTJUØSJP
outro TFSJB

'JHVSB.FSHFEFPSJHJONBTUFSOBCSBODINBTUFSEPSFQPTJUØSJPPVUSP

.FTDMBOEPCSBODIFTSFNPUBTFMPDBJTDPNSFCBTF
" BMUFSOBUJWB BP NFSHF TFSJB VN SFCBTF EB CSBODI
origin/master OBCSBODI master 1BSBJTTP EFWFNPTFYFDVUBS

140 7.6 MESCLANDO BRANCHES REMOTAS E LOCAIS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
$ git rebase origin/master

5FSÓBNPTDPNPSFTQPTUB
First, rewinding head to replay your work on top of it...
Applying: Adicionando página sobre móveis PET

"T NVEBOÎBT MÈ EP (JU)VC GPSBN BQMJDBEBT OB CSBODI MPDBM
master EPSFQPTJUØSJP outro NBTOÍPIPVWFDPNNJUEFNFSHF

0 IJTUØSJDP EP SFQPTJUØSJP GPJ MJOFBSJ[BEP  P RVF QPEFNPT


PCTFSWBSFYFDVUBOEP git log -n 5 --oneline --decorate --
parents 

0f8d4b3 e6b2f35 (HEAD, master) Adicionando página sobre móveis


PET
e6b2f35 2223859 8f53065 (origin/master) Mesclando com a branch
design
2223859 b92285b Alterando textos do banner
8f53065 b92285b (origin/design, design) Adicionando Bootstrap
b92285b a5b9fce Revert "Adicionando texto peculiar"

0CTFSWF RVF P DPNNJU DPN NFOTBHFN "EJDJPOBOEP QÈHJOB


TPCSF NØWFJT 1&5 GPJ SFGFJUP  GJDBOEP DPN P DØEJHP 0f8d4b3
BQØTTFSFNBQMJDBEPTPTDPNNJUTEF origin/master 

7.6 MESCLANDO BRANCHES REMOTAS E LOCAIS 141


E-book gerado especialmente para Hugo Hiroshi - [email protected]
&N HFSBM  OÍP RVFSFNPT BMUFSBS P IJTUØSJDP EF DPNNJUT EB
CSBODI MPDBM master  .BT Ï NBJT JNQPSUBOUF BJOEB FWJUBS
NVEBOÎBTOPTDPNNJUTEBCSBODISFNPUB origin/master
RVFÏDPNQBSUJMIBEBQPSUPEPTPTNFNCSPTEBOPTTBFRVJQF

6NBBMUFSOBUJWBCBTUBOUFVTBEBÏOÍPDPNJUBSEJSFUBNFOUFOB
CSBODI MPDBM master  NBT FN VNB PVUSB CSBODI MPDBM
FTQFDÓGJDB QBSB B GVODJPOBMJEBEF TFOEP EFTFOWPMWJEB &OUÍP
GBSÓBNPT P SFCBTF EB origin/master  OFTTB PVUSB CSBODI
MPDBM  RVF UFSJB TFV IJTUØSJDP NPEJGJDBEP %FTTB GPSNB  B
master GJDBSJBJOUBDUB

"PGJOBMEBGVODJPOBMJEBEF BCSBODIMPDBMEBGVODJPOBMJEBEF
UFSJBVNNFSHFGFJUPOBCSBODIMPDBM master 

0SFQPTJUØSJP moveis FPEP(JU)VCOÍPTPGSFSBNNVEBOÎBT


7JTVBMJ[BOEPBTJUVBÎÍPEPSFQPTJUØSJP outro UFSÓBNPT

'JHVSB3FCBTFEFPSJHJONBTUFSOBCSBODINBTUFSEPSFQPTJUØSJPPVUSP

142 7.6 MESCLANDO BRANCHES REMOTAS E LOCAIS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
0CUFOEPDPNNJUTFNFTDMBOEPEFVNBWF[DPNQVMM
1BSBPCUFSNPTFNFTDMBSNPTPTOPWPTDPNNJUTEFVNBCSBODI
SFNPUBDPNVNBCSBODIMPDBM QPEFSÓBNPTUFSVTBEPVNDPNBOEP
TØ
$ git pull

4FSÈ BCFSUP VN FEJUPS EF UFYUP QBSB RVF TFKB JOGPSNBEB B
NFOTBHFNEPDPNNJUEFNFSHF

/BTBÓEB UFSFNPTBMHPDPNP
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (5/5), done.
Unpacking objects: 100% (6/6), done.
remote: Total 6 (delta 1), reused 0 (delta 0)
From github.com:fulanodasilva/moveis-ecologicos
b92285b..e6b2f35 master -> origin/master
Removing principal.css
Merge made by the 'recursive' strategy.
index.html | 29 +++++++++++++++++++++--------
js/principal.js | 2 +-
principal.css | 11 -----------
3 files changed, 22 insertions(+), 20 deletions(-)
delete mode 100644 principal.css

0DPNBOEPBOUFSJPSWBJUFSPNFTNPFGFJUPEFVN git fetch


origin TFHVJEPEFVN git merge origin/master 

4FEFTFKÈTTFNPTRVFP git pull  UJWFTTF VN FGFJUP QBSFDJEP


DPN git fetch origin  TFHVJEP EF VN git rebase
origin/master QPEFSÓBNPTUFSQBTTBEPBPQÎÍP --rebase 

$ git pull --rebase

5FSÓBNPTDPNPSFTQPTUB
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (5/5), done.

7.6 MESCLANDO BRANCHES REMOTAS E LOCAIS 143


E-book gerado especialmente para Hugo Hiroshi - [email protected]
remote: Total 6 (delta 1), reused 0 (delta 0)
Unpacking objects: 100% (6/6), done.
From github.com:fulanodasilva/moveis-ecologicos
b92285b..e6b2f35 master -> origin/master
First, rewinding head to replay your work on top of it...
Applying: Adicionando página sobre móveis PET

1BSB TBCFS NBJT RVBM VTBS  6N QVMM PV VN QVMM 
SFCBTF
6TBS git pull  PV git pull --rebase  BP NFTDMBS DPN
NVEBOÎBT SFNPUBT Ï VNB RVFTUÍP QBSFDJEB DPN B EF TF EFWFNPT
VTBS git merge PV git rebase QBSBNFTDMBHFOTMPDBJT

0DPNBOEP git pull OÍPQBTTBEFVN git fetch TFHVJEP


EF VN git merge  1PS JTTP  UFNPT BT NFTNBT WBOUBHFOT F
EFTWBOUBHFOT EP NFSHF  NBT BHPSB DPOTJEFSBOEP SFQPTJUØSJPT
SFNPUPT$PNPWBOUBHFN UFNPTVNSFHJTUSPGJFMEPRVFBDPOUFDFV
FNDBEBSFQPTJUØSJPEBOPTTBFRVJQF DPNPTDPNNJUTFYBUPT

1PSÏN  DPNP EFTWBOUBHFN  PT WÈSJPT DPNNJUT EF NFSHF


DPNQMJDBN P FOUFOEJNFOUP EP IJTUØSJDP EP QSPKFUP  BGFUBOEP
UBSFGBTDPNPOBWFHBSQPSDØEJHPBOUJHPFSFWJTBSDØEJHPOPWP&N
UJNFT HSBOEFT  VN IJTUØSJDP DPNQMJDBEP QPEF UPSOBS P USBCBMIP
CBTUBOUFEFTBGJBEPS

/BGJHVSBBTFHVJS IÈVNQFRVFOPUSFDIPEPIJTUØSJDPEFVN
QSPKFUP SFBM FN RVF VN EPT BVUPSFT USBCBMIBSBN  DPN EFUBMIFT
PNJUJEPT 'JDB DMBSB B DPOGVTÍP PDBTJPOBEB QFMPT DPNNJUT EF
NFSHF

144 7.6 MESCLANDO BRANCHES REMOTAS E LOCAIS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB$PNNJUTEFNFSHFFNVNQSPKFUPSFBM

+È P DPNBOEP git pull --rebase  Ï VN git fetch


TFHVJEP EF VN git rebase  0 IJTUØSJDP Ï MJOFBSJ[BEP
TJNQMJGJDBOEP OPTTP USBCBMIP 1PSÏN  B DBEB SFCBTF  BMHVOT
DPNNJUT TÍP SFFTDSJUPT F  OP GJN EBT DPOUBT  FTUBNPT QFSEFOEP
JOGPSNBÎÜFTTPCSFOPTTPSFQPTJUØSJP2VBOEPBDPOUFDFNDPOGMJUPT
DPSSJHJMPTQPEFTFSCBTUBOUFDPNQMJDBEP

0 SFCBTF QPEF TFS FTQFDJBMNFOUF QSPCMFNÈUJDP TF BDBCBSNPT


NVEBOEP VN DPNNJU KÈ DPNQBSUJMIBEP DPN PVUSPT NFNCSPT EB
OPTTB FRVJQF /PTTPT DPMFHBT QPEFN TPGSFS OB IPSB EF PCUFS PT
DPNNJUTNPEJGJDBEPT KÈRVFP(JUQPEFTFQFSEFS

/ÍPQBSFDFVNBCPBTPMVÎÍPVTBSTFNQSFPNFSHFPVTFNQSFP
SFCBTF6NNFJPUFSNPQBSFDFBMHPNBJTTFOTBUP

/PTTBTVHFTUÍPÏBTFHVJOUF

6UJMJ[BS VN git pull --rebase  QBSB PCUFS


NVEBOÎBT SFNPUBT ² VNB QSÈUJDB TFHVSB  QPSRVF
OPTTPT OPWPT DPNNJUT MPDBJT BJOEB OÍP GPSBN

7.6 MESCLANDO BRANCHES REMOTAS E LOCAIS 145


E-book gerado especialmente para Hugo Hiroshi - [email protected]
DPNQBSUJMIBEPT PVTFKB PVUSPTNFNCSPTOFNTBCFN
EB FYJTUÐODJB EFTTFT DPNNJUT 1PS JTTP  BMUFSÈMPT OÍP
USB[HSBOEFTQSPCMFNBT

"P USBCBMIBSNPT FN VNB OPWB GVODJPOBMJEBEF


VUJMJ[BOEP VNB CSBODI  NBSDBNPT TVB FOUSFHB
GB[FOEPVNNFSHF"TTJN DPOTFHVJNPTUFSVNBCPB
JEFJB EF RVBOEP B GVODJPOBMJEBEF DPNFÎPV B TFS
EFTFOWPMWJEB F RVBOEP GPJ SFJOUFHSBEB Ë CSBODI
master 

4F FTUJWFSNPT USBCBMIBOEP TP[JOIPT OB OPWB


GVODJPOBMJEBEF  QPEFNPT GB[FS SFCBTFT QFSJØEJDPT EB
master  OB OPTTB CSBODI QBSB PCUFS DØEJHP OPWP
QPSÏNEFJYBOEPPIJTUØSJDPEBCSBODICFNMJNQP

² JOUFSFTTBOUF GB[FS P QVTI EB OPTTB CSBODI TPMJUÈSJB


FN VN SFQPTJUØSJP SFNPUP QBSB CBDLVQ .BT Ï
JNQPSUBOUFFWJUBSRVFBMHVÏNGBÎBDIFDLPVU

6NB EJTDVTTÍP EFUBMIBEB QPEF TFS FODPOUSBEB FN


IUUQCMPHTPVSDFUSFFBQQDPNNFSHFPSSFCBTF

%&-&5"/%0#3"/$)&43&.05"4
7BNPT EJ[FS RVF OPTTP DMJFOUF TPMJDJUPV RVF GJ[ÏTTFNPT VNB
QÈHJOB EF DPOUBUPT RVF QFSNJUF BP VTVÈSJP EP TJUF FOWJP EF
NFOTBHFOT 1BSB JNQMFNFOUBS FTTB TPMJDJUBÎÍP  USBCBMIBSFNPT FN
VNBOPWBCSBODIDIBNBEB contato 

1BSB DSJÈMB F KÈ DPNFÎBS B USBCBMIBS OFMB  FYFDVUBNPT P


DPNBOEP git checkout -b contato 5FSÓBNPTDPNPSFTQPTUB

146 7.7 DELETANDO BRANCHES REMOTAS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
Switched to a new branch 'contato'

&OUÍP  WBNPT JOJDJBS P EFTFOWPMWJNFOUP DSJBOEP VN BSRVJWP


DPNPOPNF contato.html FDPNPTFHVJOUFDØEJHP
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Entre em contato conosco</title>
</head>
<body>
<h1>Fale com a gente.</h1>
<p>Dúvidas, sugestões ou choramingos</p>
<form>
<label for="nome">Nome</label>
<input id="nome">
<label for="email">Email</label>
<input id="email">
<label for="mensagem">Mensagem</label>
<textarea id="mensagem"></textarea>
<input type="submit" value="Enviar">
</form>
</body>
</html>

7BNPT SBTUSFBS OPTTP OPWP BSRVJWP DPN git add


contato.html  F DPNJUÈMP DPN git commit -m "Iniciando
página de contato" 

.BT TVSHJV VNB OPWB EFNBOEB VSHFOUF 5FNPT EF QBSBS EF


USBCBMIBS OB QÈHJOB EF DPOUBUP "MHVÏN EP OPTTP UJNF EJTTF RVF
EBSJBTFHVJNFOUP1PSJTTP SFTPMWFNPTDPNQBSUJMIBSOPTTBCSBODI
FYFDVUBOEP git push origin contato 

1SPOUP BCSBODI contato  GPJ QVCMJDBEB F UFN VNB DØQJB MÈ


OP(JU)VC

"PFYFDVUBSNPTPDPNBOEP git branch -a -v UFSÓBNPT

7.7 DELETANDO BRANCHES REMOTAS 147


E-book gerado especialmente para Hugo Hiroshi - [email protected]
* contato 3523c62 Iniciando página de contato
design 8f53065 Adicionando Bootstrap
master 0f8d4b3 Adicionando página sobre móveis
PET
remotes/origin/contato 3523c62 Iniciando página de contato
remotes/origin/design 8f53065 Adicionando Bootstrap
remotes/origin/master 0f8d4b3 Adicionando página sobre móveis
PET

.BTOPTTPDMJFOUF RVFÏVNQPVDPJOEFDJTP WPMUPVBUSÈTFRVJT


TJNQMJGJDBS P QSPKFUP  QBSBOEP P EFTFOWPMWJNFOUP EB QÈHJOB EF
DPOUBUPFEFJYBOEPBQFOBTPFNBJMOBQÈHJOBQSJODJQBM

%FWJEP B FTTB NVEBOÎB OPT SFRVJTJUPT  SFTPMWFNPT SFNPWFS


OPTTB CSBODI contato  NVEBOEP QBSB B CSBODI master  EP
OPTTP SFQPTJUØSJP F FYFDVUBOEP P DPNBOEP git branch -D
contato  .BT RVBOEP FYFDVUBNPT P DPNBOEP BOUFSJPS
SFNPWFNPTBQFOBTBCSBODIMPDBM contato 

-ÈOP(JU)VC BCSBODI contato DPOUJOVBJOUBDUB&BOPTTB


CSBODI SFNPUB origin/contato  RVF BQPOUB QBSB B CSBODI
DPSSFTQPOEFOUF EP (JU)VC  UBNCÏN DPOUJOVB OP OPTTP
SFQPTJUØSJP

1PEFNPT DPOTUBUBS JTTP FYFDVUBOEP OPWBNFOUF P DPNBOEP


git branch -a -v 

design 8f53065 Adicionando Bootstrap


* master 0f8d4b3 Adicionando página sobre móveis
PET
remotes/origin/contato 3523c62 Iniciando página de contato
remotes/origin/design 8f53065 Adicionando Bootstrap
remotes/origin/master 0f8d4b3 Adicionando página sobre móveis
PET

1BSB SFNPWFSNPT EFGJOJUJWBNFOUF B CSBODI SFNPUB


origin/contato  F B CSBODI contato  MÈ EP (JU)VC  EFWFNPT

148 7.7 DELETANDO BRANCHES REMOTAS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
FYFDVUBS
$ git push origin :contato

5FSÓBNPTOBTBÓEB
To [email protected]:fulanodasilva/moveis-ecologicos.git
- [deleted] contato

1SPOUP 4F PMIBSNPT OP (JU)VC  B CSBODI contato  OÍP


BQBSFDFNBJT

/P DBTP EB CSBODI MÈ EP TFSWJEPS UFS VN OPNF EJGFSFOUF EB
CSBODIMPDBM BPEFMFUÈMB EFWFNPTVUJMJ[BSPOPNFEBCSBODI
EPTFSWJEPS

1PS FYFNQMP  TF


B CSBODI EP TFSWJEPS GPTTF
contato_do_servidor  EFWFSÓBNPT FYFDVUBS git push
origin :contato_do_servidor 

7.7 DELETANDO BRANCHES REMOTAS 149


E-book gerado especialmente para Hugo Hiroshi - [email protected]
CAPÍTULO 8

$0/530-"/%07&34¿&4
%0$»%*(0$0.5"(4

.PTUSBNPT P OPWP EFTJHO QBSB P OPTTP DMJFOUF F GPJ VN


TVDFTTP/PTTPDMJFOUFQFEJVRVFDPMPDÈTTFNPTOPBSBOPWBWFSTÍP
PNBJTSÈQJEPQPTTÓWFM

"P MJCFSBSNPT FTTB OPWB WFSTÍP EP TJUF QBSB JNQMBOUBÎÍP FN


QSPEVÎÍP  Ï VNB CPB QSÈUJDB UJSBSNPT VNB GPUP EP DØEJHP OFTTF
NPNFOUP4FIPVWFSBMHVNFSSP TBCFSFNPTFYBUBNFOUFPDØEJHP
RVFFTUÈTFOEPVTBEPFNQSPEVÎÍPFTFSÈNBJTGÈDJMDBÎBSBPSJHFN
EBGBMIB

&N TJTUFNBT EF DPOUSPMF EF WFSTÍP  FTTBT GPUPT EF VN


EFUFSNJOBEPJOTUBOUFEFVNSFQPTJUØSJPTÍPDIBNBEBTEFUBHT/P
(JU VNBUBHÏTJNQMFTNFOUFVNBQPOUBEPSGJYPQBSBVNDPNNJU
FTQFDÓGJDP "P DPOUSÈSJP EF CSBODIFT  FTTF BQPOUBEPS OÍP BWBOÎB
DPNOPWPTDPNNJUT

&N HFSBM  DSJBNPT UBHT DPN OPNFT DPNP v1.0  v1.1


v2.0 FBTTJNQPSEJBOUF$BEBFRVJQFEFWFEFGJOJSPTFVQBESÍP

150 8 CONTROLANDO VERSÕES DO CÓDIGO COM TAGS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
0T OPNFT QFSNJUJEPT QBSB UBHT F CSBODIFT UÐN BMHVNBT
SFTUSJÎÜFTOÍPQPEFNDPOUFSBMHVOTDBSBDUFSFTFTQFDJBJTDPNP
~  ^ F : BMÏNEFTFRVÐODJBTEFDBSBDUFSFT DPNP ..  F
@{ 

0T EFUBMIFT QPEFN TFS PCUJEPT FN IUUQHJU


TDNDPNEPDTHJUDIFDLSFGGPSNBUIUNM

 $3*"/%0  -*45"/%0 & %&-&5"/%0


5"(4
1BSB DSJBSNPT VNB UBH v1.0  OP (JU  EFWFNPT FYFDVUBS P
DPNBOEP
$ git tag v1.0

0 HSÈGJDP EP OPTTP SFQPTJUØSJP MPDBM outro  EFQPJT EP


DPNBOEPBOUFSJPSGJDBSJBQBSFDJEPDPN

'JHVSB/PWBUBHOPSFQPTJUØSJPPVUSP

8.1 CRIANDO, LISTANDO E DELETANDO TAGS 151


E-book gerado especialmente para Hugo Hiroshi - [email protected]
4F RVJTFSNPT MJTUBS BT UBHT EP OPTTP SFQPTJUØSJP  CBTUB
FYFDVUBSNPT
$ git tag

5FSÓBNPTDPNPSFTQPTUB
v1.0

4FWFSJGJDBSNPTPIJTUØSJDPEPSFQPTJUØSJPDPNPDPNBOEP git
log -n 5 --oneline --decorate WFSFNPT

0f8d4b3 (HEAD, tag: v1.0, master) Adicionando página sobre


móveis PET
e6b2f35 (origin/master) Mesclando com a branch design
2223859 Alterando textos do banner
8f53065 (origin/design, design) Adicionando Bootstrap
b92285b Revert "Adicionando texto peculiar"

0CTFSWFRVFPDPNNJU 0f8d4b3 QPTTVJBUBH v1.0 

1PEFNPTDSJBSVNBUBHQBSBVNDPNNJUQBTTBEP4FRVJTFSNPT
DSJBS VNB UBH DIBNBEB banners  QBSB P DPNNJU 2223859
"MUFSBOEPUFYUPTEPCBOOFS
EFWFNPTFYFDVUBS
$ git tag banners 2223859

*NBHJOF RVF UFOIBNPT FSSBEP P OPNF EF VNB UBH 1PS


FYFNQMP  DSJBNPT B UBH verssao1  DPN P DPNBOEP git tag
verssao1 1PEFNPTEFMFUÈMBDPNPDPNBOEP

$ git tag -d verssao1

/BTBÓEB UFSFNPT
Deleted tag 'verssao1' (was 0f8d4b3)

 ."*4 */'03."±¿&4 $0. 5"(4

152 8.2 MAIS INFORMAÇÕES COM TAGS ANOTADAS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
"/05"%"4
"T UBHT RVF BDBCBNPT EF DSJBS TÍP DIBNBEBT EF UBHT MFWFT
QPSRVF OÍP QBTTBN EF VN TJNQMFT BQPOUBEPS GJYP QBSB VN
DPNNJU 4F EFTFKBSNPT NBOUFS NBJT JOGPSNBÎÜFT DPNP RVBOEP
VNBUBHGPJDSJBEB RVFNBDSJPV BMÏNEFUFSNPTVNBNFOTBHFN
EFTDSJUJWB EFWFNPTDSJBSUBHTBOPUBEBT

1BSBDSJBSNPTVNBUBHBOPUBEB CBTUBVTBSNPTBPQÎÍP -a EP


DPNBOEP git tag FJOGPSNBSVNBNFOTBHFNDPNBPQÎÍP -m 
$ git tag -a v1.1 -m "Liberando versão urgente"

4FOÍPJOGPSNBSNPTVNBNFOTBHFNBPVTBSNPTBPQÎÍP -a
EPDPNBOEP git tag TFSÈBCFSUPVNFEJUPSEFUFYUP

1PEFNPT FYJCJS BT JOGPSNBÎÜFT EF VNB UBH BOPUBEB DPN P


DPNBOEP
$ git show -s v1.1

5FSÓBNPT DPNP SFTQPTUB EFUBMIFT TPCSF B DSJBÎÍP EB UBH


BOPUBEB  BMÏN EF JOGPSNBÎÜFT TPCSF P DPNNJU QBSB P RVBM B UBH
BQPOUB
tag v1.1
Tagger: Fulano da Silva <[email protected]>
Date: Sun Jun 22 13:49:13 2014 -0300

Liberando versão urgente

commit 0f8d4b3f1a5ee4594e72ab1f49786b3a31ab20bb
Author: Fulano da Silva <[email protected]>
Date: Fri Jun 13 17:14:16 2014 -0300

8.2 MAIS INFORMAÇÕES COM TAGS ANOTADAS 153


E-book gerado especialmente para Hugo Hiroshi - [email protected]
Adicionando página sobre móveis PET

0 DPNBOEP git show  OÍP TFSWF BQFOBT QBSB FYJCJS


JOGPSNBÎÜFT EF UBHT ² QPTTÓWFM VUJMJ[ÈMP QBSB JOTQFDJPOBS
DPNNJUTFPVUSPTEFUBMIFTJOUFSOPTEP(JU

 $0.1"35*-)"/%0 5"(4 $0. " 46"


&26*1&
"TUBHTDSJBEBTDPNPDPNBOEP git tag  BOPUBEBT PV OÍP
GJDBNEJTQPOÓWFJTBQFOBTOPSFQPTJUØSJPMPDBM

2VBOEP FTUBNPT USBCBMIBOEP FN FRVJQF  FN HFSBM RVFSFNPT


DPNQBSUJMIBSBTUBHTRVFDSJBNPTDPNOPTTPTDPMFHBT FOWJBOEPBT
QBSBPSFQPTJUØSJPEPTFSWJEPS/POPTTPDBTP FOWJBSÓBNPTBTUBHT
RVF DSJBNPT QBSB P (JU)VC 1BSB DPNQBSUJMIBS UBHT  GB[FNPT EF
NBOFJSB QBSFDJEB DPN P RVF GJ[FNPT DPN CSBODIFT  VUJMJ[BOEP P
DPNBOEP git push 

1BSBDPNQBSUJMIBSBUBH v1.0 EFWFNPTFYFDVUBSPDPNBOEP


$ git push origin v1.0

4FSÈFYJCJEPBMHPDPNP
Counting objects: 13, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (8/8), done.
Writing objects: 100% (9/9), 1.20 KiB | 0 bytes/s, done.
Total 9 (delta 4), reused 0 (delta 0)
To [email protected]:fulanodasilva/moveis.git
* [new tag] v1.0 -> v1.0

154 8.3 COMPARTILHANDO TAGS COM A SUA EQUIPE


E-book gerado especialmente para Hugo Hiroshi - [email protected]
1SPOUP " UBH v1.0  GPJ FOWJBEB QBSB P SFQPTJUØSJP SFNPUP
origin /PTTPTDPMFHBTEFFRVJQFQPEFSÍPPCUFSFTTBUBHRVBOEP
FYFDVUBSFNPDPNBOEP git pull 

.BT BJOEB UFNPT PVUSBT UBHT QBSB DPNQBSUJMIBS BT UBHT


banners F v1.1 &YFDVUBSPDPNBOEP git push QBSBDBEBUBH
ÏBMHPCBTUBOUFUFEJPTP

4F RVJTFSNPT FOWJBS UPEBT BT OPWBT UBHT EP SFQPTJUØSJP MPDBM
QBSB VN SFQPTJUØSJP SFNPUP QPEFNPT VUJMJ[BS P DPNBOEP git
push DPNBPQÎÍP --tags 

$ git push origin --tags


```

/BTBÓEB UFSFNPT
Counting objects: 1, done.
Writing objects: 100% (1/1), 181 bytes | 0 bytes/s, done.
Total 1 (delta 0), reused 0 (delta 0)
To [email protected]:fulanodasilva/moveis.git
* [new tag] banners -> banners
* [new tag] v1.1 -> v1.1

4FPMIBSNPTOP(JU)VC WFSFNPTRVFOPTTBTUBHTFTUÍPMÈ

8.3 COMPARTILHANDO TAGS COM A SUA EQUIPE 155


E-book gerado especialmente para Hugo Hiroshi - [email protected]
CAPÍTULO 9

-*%"/%0$0.
$0/'-*504

"P NFTDMBSNPT NVEBOÎBT FOUSF EVBT CSBODIFT MPDBJT OP


DBQÓUVMP0SHBOJ[BOEPPUSBCBMIPDPNCSBODIFT FFOUSFVNBCSBODI
MPDBM F VNB SFNPUB OP DBQÓUVMP 5SBCBMIBOEP FN FRVJQF DPN
CSBODIFT SFNPUBT  P (JU TPVCF GB[FS FTTB NFTDMBHFN
BVUPNBUJDBNFOUF  TFN RVBMRVFS QSPCMFNB $PNQBSBEP DPN
PVUSPTTJTUFNBTEFDPOUSPMFTEFWFSTÍP P(JUÏFTQFDJBMNFOUFCPN
BPKVOUBSNVEBOÎBTEFEVBTCSBODIFTEJGFSFOUFT

/PT DBQÓUVMPT BOUFSJPSFT  GJ[FNPT NVEBOÎBT FN BSRVJWPT


EJGFSFOUFT  P RVF P (JU SFTPMWF DPN GBDJMJEBEF "UÏ NVEBOÎBT FN
VN NFTNP BSRVJWP QPEFN TFS SFTPMWJEBT .BT NFTNP P (JU OÍP
DPOTFHVFGB[FSNJMBHSFT

 .&4$-"/%0 .6%"/±"4 &. 6.


.&4.0"326*704&.$0/'-*504
/PTTP DMJFOUF MJHPV EFTFTQFSBEP EJ[FOEP RVF EFTDPCSJV VN
FSSP JNQPSUBOUF OP TJUF FTUBWB GBMUBOEP P BDSÙOJNP 4 " OP
UÓUVMPEBQÈHJOB

1SFDJTBOEP BUFOEÐMP DPN VSHÐODJB  GJ[FNPT B TFHVJOUF

156 9 LIDANDO COM CONFLITOS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
NPEJGJDBÎÍPOBCSBODI master OPBSRVJWP index.html 
<!-- início do arquivo ... -->
<head>
<!-- tags meta e link ... -->
<title>Móveis Ecológicos S. A.</title>
<!-- tag script -->
</head>
<!-- restante do arquivo ... -->

$PNBBMUFSBÎÍPGFJUB DPNJUBNPTPBSRVJWP index.html DPN


P DPNBOEP git commit -am "Corrigindo título da
página" 0CUJWFNPTOBTBÓEB

[master 1963258] Corrigindo título da página


1 file changed, 1 insertion(+), 1 deletion(-)

0VUSBDPJTBRVFOPTTPDMJFOUFOPTJOGPSNPVÏRVFBQÈHJOBEB
.ØWFJT&DPMØHJDPT4"FTUBWBTFOEPDPQJBEBQPSPVUSBTFNQSFTBT
EPSBNP4VHFSJNPTBMHVNBTTPMVÎÜFTQBSBNJOJNJ[BSPQSPCMFNB
NBT OPTTP DMJFOUF EFDJEJV QPS VNB NBOFJSB TJNQMFT DPMPDBS VN
SPEBQÏ OB QÈHJOB DPN P TÓNCPMP EF DPQZSJHIU &OUSFUBOUP  P
SPEBQÏ UFSJB EF TFS CPOJUP P SPEBQÏ NBJT CFMP EF UPEPT PT
UFNQPT TFHVOEPOPTTPDMJFOUF

1BSB QPEFSNPT USBCBMIBS DPN DBMNB FN CVTDB EP SPEBQÏ


QFSGFJUP  QBTTBOEP B USBCBMIBS OB CSBODI design  EFQPJT EF
FYFDVUBSPDPNBOEP git checkout design 

%FQPJT EF BMHVN FTGPSÎP  DIFHBNPT B VN EFTJHO VUJMJ[BOEP


DMBTTFT EP GSBNFXPSL $44 #PPUTUSBQ .PEJGJDBNPT P BSRVJWP
index.html DPOGPSNFBTFHVJS

<!-- inicio do arquivo -->


<p class="text-muted text-right">
&copy; Copyright Móveis Ecológicos S. A.
</p>
<div>

9.1 MESCLANDO MUDANÇAS EM UM MESMO ARQUIVO SEM CONFLITOS 157


E-book gerado especialmente para Hugo Hiroshi - [email protected]
</body>

&OUÍP  BEJDJPOBNPT B NVEBOÎB F B HSBWBNPT OP SFQPTJUØSJP


DPN P DPNBOEP git commit -am "Adicionando rodapé com
copyright" /BTBÓEB GPJNPTUSBEP

[design 0e2d613] Adicionando rodapé com copyright


1 file changed, 3 insertions(+)

-JTUBOEPPIJTUØSJDPEPTÞMUJNPTEPJTDPNNJUTDPNPDPNBOEP
git log -n 2 --oneline --decorate --all UFSÓBNPT

0e2d613 (HEAD, design) Adicionando rodapé com copyright


1963258 (master) Corrigindo título da página
```

0 DPNNJU EF DØEJHP 0e2d613  "EJDJPOBOEP SPEBQÏ DPN


DPQZSJHIU
BJOEBOÍPGPJNFTDMBEPOB master 7BNPTWPMUBSQBSB
B CSBODI master  FYFDVUBOEP P DPNBOEP git checkout
master 

"HPSB WBNPTGB[FSPNFSHFEBCSBODI design  OB master


DPNPDPNBOEP git merge design -m "Merge de design na
master" 5FSFNPTDPNPSFTQPTUB

Auto-merging index.html
Merge made by the 'recursive' strategy.
index.html | 3 +++
1 file changed, 3 insertions(+)

4F PCTFSWBSNPT P DPOUFÞEP EP BSRVJWP index.html  P


DPOUFÞEP FTUÈ EF BDPSEP DPN BT ÞMUJNBT BMUFSBÎÜFT P UÓUVMP EB
QÈHJOBGPJBUVBMJ[BEPFGPJJOTFSJEPVNSPEBQÏDPNJOGPSNBÎÜFTEF
DPQZSJHIU

0 (JU DPOTFHVJV GB[FS P NFSHF BVUPNÈUJDP  NFTDMBOEP TFN


QSPCMFNBT BMUFSBÎÜFT OP BSRVJWP index.html  EBT CSBODIFT

158 9.1 MESCLANDO MUDANÇAS EM UM MESMO ARQUIVO SEM CONFLITOS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
design F master  *TTP BDPOUFDFV QPSRVF BMUFSBNPT P BSRVJWP
FNÈSFBTEJTUJOUBT

4FUJWÏTTFNPTGFJUPVN git rebase design QBSBNFTDMBSBT


BMUFSBÎÜFT EB CSBODI design  OB master  UBNCÏN OÍP
UFSÓBNPTOFOIVNDPOGMJUP/PDBTPEBTBMUFSBÎÜFTTFSFNGFJUBT
FNVNBCSBODISFNPUB QPEFSÓBNPTVUJMJ[BSVN git pull
PVVN git pull --rebase TFNOFOIVNDPOGMJUP

 $0/'-*504 "1»4 6. .&3(& $0.


.6%"/±"4&.6..&4.0"326*70
%FJYBNPTOPTTPDMJFOUFTBUJTGFJUP&DPNBTBUJTGBÎÍPTVSHJSBN
OPWBT JEFJBT 6NB EBT DPJTBT RVF OPTTP DMJFOUF QFEJV GPJ DPMPDBS
VN UFYUP CBTUBOUF DSJBUJWP OP UPQP EB QÈHJOB & TPMJDJUPV RVF B
NVEBOÎBGPTTFVSHFOUF

1PS JTTP  OB CSBODI master  FEJUBNPT P BSRVJWP


index.html  JOTFSJOEP MPHP BCBJYP EB UBH h2  P TFHVJOUF
QBSÈHSBGP
<!-- inicio do arquivo até tag h2-->
<p>Do lixo ao luxo, um resgate do descartado e uma transformação
em algo funcional. Reaproveitar é aproveitar. Coisas descartadas
são nossa carta na manga. Erodido, mas único.</p>
<!-- ul e restante do arquivo -->

/BCSBODI master DPNJUBNPTBTBMUFSBÎÜFTOP index.html


FYFDVUBOEP P DPNBOEP git commit -am "Adicionando texto
criativo" 5FNPTDPNPSFTQPTUB

9.2 CONFLITOS APÓS UM MERGE COM MUDANÇAS EM UM MESMO ARQUIVO


159
E-book gerado especialmente para Hugo Hiroshi - [email protected]
[master d2f3597] Adicionando texto criativo
1 file changed, 3 insertions(+)

0VUSP QFEJEP EP OPTTP DMJFOUF GPJ NFMIPSBS P EFTJHO EP


CBOOFS  EF NBOFJSB B EFTUBDÈMPT 1BSB USBCBMIBS OFTTB EFNBOEB
NVEBNPT QBSB B CSBODI design  FYFDVUBOEP P DPNBOEP git
checkout design 

1FTRVJTBNPT VN QPVDP F SFTPMWFNPT VUJMJ[BS VN SFDVSTP EP


#PPUTUSBQQBSBFNCFMF[BSPCBOOFS/BCSBODI design FEJUBNPT
PBSRVJWP index.html JOTFSJOEPBTTFHVJOUFTDMBTTFT$44OBUBH
h2 

<!-- inicio do arquivo até tag h1-->


<h2 id="mensagem" class="alert alert-info"></h2>
<!-- ul e restante do arquivo -->

%FQPJTEJTTP OBCSBODI design DPNJUBNPTBTBMUFSBÎÜFTOP


BSRVJWP index.html FYFDVUBOEPPDPNBOEP git commit -am
"Melhorando design do banner" /BTBÓEB UJWFNPT

[design fa528a5] Melhorando design do banner


1 file changed, 1 insertion(+), 1 deletion(-)

"JOEB OB CSBODI design  BP FYJCJSNPT P IJTUØSJDP EPT


ÞMUJNPTEPJTDPNNJUTEPSFQPTJUØSJPDPNPDPNBOEP git log -n
2 --oneline --decorate --all UFSÓBNPT

fa528a5 (HEAD, design) Melhorando design do banner


d2f3597 (master) Adicionando texto criativo

/PUFRVFPDPNNJUEFDØEJHP fa528a5  .FMIPSBOEPEFTJHO


EP CBOOFS
 BJOEB OÍP UFWF TVBT BMUFSBÎÜFT BQMJDBEBT OB CSBODI
master  &YFDVUBOEP P DPNBOEP git checkout master
WPMUBNPTBUSBCBMIBSOBCSBODI master 

1BSB NFTDMBSNPT P ÞMUJNP DPNNJU EB CSBODI design  OB

160 9.2 CONFLITOS APÓS UM MERGE COM MUDANÇAS EM UM MESMO


ARQUIVO
E-book gerado especialmente para Hugo Hiroshi - [email protected]
master FYFDVUBNPTPDPNBOEP git merge design -m "Merge
de design na master" /BTBÓEB UFSFNPT

Auto-merging index.html
CONFLICT (content): Merge conflict in index.html
Automatic merge failed;fix conflicts and then commit the result.

0CTFSWF B NFOTBHFN BOUFSJPS GPJ JOEJDBEP RVF IPVWF VN


DPOGMJUP OP BSRVJWP index.html  F RVF P NFSHF BVUPNÈUJDP
GBMIPV

4F BCSJSNPT P BSRVJWP index.html  WFSFNPT VN DPOUFÞEP


FTUSBOIP
<!-- inicio do arquivo arquivo até h1 -->
<<<<<<< HEAD
<h2 id="mensagem"></h2>
<p>Do lixo ao luxo, um resgate do descartado e uma transformação
em algo funcional. Reaproveitar é aproveitar. Coisas descartadas
são nossa carta na manga. Erodido, mas único.</p>
=======
<h2 id="mensagem" class="alert alert-info"></h2>
>>>>>>> design
<!-- ul e restante do arquivo -->

.FTNPTFOEPNVJUPCPNQBSBGB[FSPNFSHFBVUPNÈUJDP EFTTB
WF[ P (JU OÍP DPOTFHVJV NFTDMBS P BSRVJWP index.html  EF
NBOFJSBDMBSB QPSRVFGPSBNGFJUBTBMUFSBÎÜFTOBNFTNBSFHJÍPEP
BSRVJWP

%F GPSNB DBVUFMPTB  P (JU NBSDPV VN DPOGMJUP DPN PT


DBSBDUFSFT <  = F > 

&OUSFPTUFYUPT <<<<<<< HEAD F ======= FTUÍPBTBMUFSBÎÜFT


RVFGJ[FNPTOBCSBODI master RVFÏBCSBODIBUVBM QBSBRVBMP
HEAD FTUÈBQPOUBOEP

+ÈFOUSF ======= F >>>>>>> design FTUÍPBTBMUFSBÎÜFTRVF

9.2 CONFLITOS APÓS UM MERGE COM MUDANÇAS EM UM MESMO ARQUIVO


161
E-book gerado especialmente para Hugo Hiroshi - [email protected]
GJ[FNPTOBCSBODI design 

"PFYFDVUBSNPT git status UFSFNPT


On branch master
Your branch is ahead of 'origin/master' by 5 commits.
(use "git push" to publish your local commits)

You have unmerged paths.


(fix conflicts and run "git commit")

Unmerged paths:
(use "git add <file>..." to mark resolution)

both modified: index.html

no changes added to commit (use "git add" and/or


"git commit -a")

/PUFRVFPBSRVJWP index.html BQBSFDFDPNPOÍPNFTDMBEP


DPNP CPUI NPEJGJFE TPC 6ONFSHFE QBUIT OPNFT OÍP NVJUP
JOUVJUJWPT


"HPSBUFSFNPTEFSFBMJ[BSPNFSHFNBOVBMNFOUF/FTTFDBTP B
TPMVÎÍPÏGÈDJM7BNPTFEJUBSPBSRVJWP index.html EBTFHVJOUF
NBOFJSB
<!-- inicio do arquivo arquivo até h1 -->
<h2 id="mensagem" class="alert alert-info"></h2>
<p>Do lixo ao luxo, um resgate do descartado e uma transformação
em algo funcional. Reaproveitar é aproveitar. Coisas descartadas
são nossa carta na manga. Erodido, mas único.</p>
<!-- ul e restante do arquivo -->

.FTNPEFQPJTEFFEJUBSPBSRVJWP SFNPWFOEPBTNBSDBÎÜFTEF
DPOGMJUP F NFTDMBOEP NBOVBMNFOUF BT BMUFSBÎÜFT  BJOEB UFSFNPT B
NFTNB SFTQPTUB EF BOUFT BP FYFDVUBSNPT git status  1BSB
JOGPSNBSNPT QBSB P (JU RVF SFTPMWFNPT P DPOGMJUP OP BSRVJWP
UFNPT RVF BEJDJPOÈMP Ë ÈSFB EF TUBHF FYFDVUBOEP git add

162 9.2 CONFLITOS APÓS UM MERGE COM MUDANÇAS EM UM MESMO


ARQUIVO
E-book gerado especialmente para Hugo Hiroshi - [email protected]
index.html 

"HPSB BPFYFDVUBSNPT git status UFSFNPT


On branch master
Your branch is ahead of 'origin/master' by 5 commits.
(use "git push" to publish your local commits)

All conflicts fixed but you are still merging.


(use "git commit" to conclude merge)

Changes to be committed:

modified: index.html

3FQBSFRVFPBSRVJWP index.html BQBSFDFDPNPNPEJGJDBEP


FFTUÈQSPOUPQBSBTFSDPNJUBEP

%FQPJT EJTTP  GBMUB DPNJUBSNPT BT NVEBOÎBT DPN P DPNBOEP


git commit -am "Resolvendo conflitos após merge de
design" $PNPSFTQPTUB WFSFNPT

[master d364c56] Resolvendo conflitos após merge de design

1SPOUP$POGMJUPSFTPMWJEP'JOBMNFOUFPNFSHFGPJGJOBMJ[BEP
/PTTBQÈHJOBGJDPVDPNVNWJTVBMCFNSB[PÈWFM

9.2 CONFLITOS APÓS UM MERGE COM MUDANÇAS EM UM MESMO ARQUIVO


163
E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB1ÈHJOBFNCFMF[BEB

 3&40-7&/%0 $0/'-*504 "1»4 6.


3&#"4&
& TF UJWÏTTFNPT VUJMJ[BEP VN SFCBTF QBSB NFTDMBS BT ÞMUJNBT
NVEBOÎBTEBCSBODI design OB master

%FWFNPT VOJS P DPNNJU fa528a5  .FMIPSBOEP EFTJHO EP


CBOOFS
 EB CSBODI design  DPN P DPNNJU d2f3597
"EJDJPOBOEP UFYUP DSJBUJWP
 EB CSBODI master  .BT BNCPT
BMUFSBNPUPQPEPBSRVJWP index.html PRVFHFSBVNDPOGMJUP

$POTJEFSBOEPRVFFTUBNPTOBCSBODI master BQØTFYFDVUBS


PDPNBOEP git rebase design WFSÓBNPT
First, rewinding head to replay your work on top of it...
Applying: Alterando textos do banner
Applying: Adicionando página sobre móveis PET
Applying: Corrigindo título da página
Applying: Adicionando texto criativo

164 9.3 RESOLVENDO CONFLITOS APÓS UM REBASE


E-book gerado especialmente para Hugo Hiroshi - [email protected]
Using index info to reconstruct a base tree...
M index.html
Falling back to patching base and 3-way merge...
Auto-merging index.html
CONFLICT (content): Merge conflict in index.html
Failed to merge in the changes.
Patch failed at 0004 Adicionando texto criativo
The copy of the patch that failed is found in:
/home/fulanodasilva/moveis/.git/rebase-apply/patch

When you have resolved this problem, run "git rebase


--continue".
If you prefer to skip this patch, run "git rebase --skip"
instead.
To check out the original branch and stop rebasing, run
"git rebase --abort".

0CTFSWFRVFBQBSFDFVNDPOGMJUPOPBSRVJWP index.html 

"PFYFDVUBSNPTPDPNBOEP git status UFSÓBNPT


rebase in progress; onto fa528a5
You are currently rebasing branch 'master' on 'fa528a5'.
(fix conflicts and then run "git rebase --continue")
(use "git rebase --skip" to skip this patch)
(use "git rebase --abort" to check out the original branch)

Unmerged paths:
(use "git reset HEAD <file>..." to unstage)
(use "git add <file>..." to mark resolution)

both modified: index.html

no changes added to commit (use "git add" and/or "git commit -a")

%F NBOFJSB TFNFMIBOUF BP RVF BDPOUFDFV BQØT P DPOGMJUP OP


NFSHF PBSRVJWP index.html BQBSFDFFN6ONFSHFEQBUITDPNP
CPUINPEJGJFE"QFTBSEBEFTDSJÎÍPQPVDPJOUVJUJWB JTTPJOEJDBRVF
IÈVNDPOGMJUPOFTTFBSRVJWP

"P BCSJSNPT P BSRVJWP index.html  WFSFNPT BT NFTNBT


NBSDBÎÜFTEFDPOGMJUPDPNPTUFYUPT <<<<<<< HEAD  ======= F

9.3 RESOLVENDO CONFLITOS APÓS UM REBASE 165


E-book gerado especialmente para Hugo Hiroshi - [email protected]
>>>>>>> design  %FWFNPT NFTDMBS P BSRVJWP index.html
NBOVBMNFOUF  SFNPWFOEP BT NBSDBÎÜFT EF DPOGMJUP  DPOGPSNF
GJ[FNPTBOUFSJPSNFOUF

1BSB NBSDBS B SFTPMVÎÍP EP DPOGMJUP  EFWFNPT FYFDVUBS git


add index.html  %FQPJT EJTTP  BP FYFDVUBS git status
UFSÓBNPT
rebase in progress; onto fa528a5
You are currently rebasing branch 'master' on 'fa528a5'.
(all conflicts fixed: run "git rebase --continue")

Changes to be committed:
(use "git reset HEAD <file>..." to unstage)

modified: index.html

1BSBGJOBMJ[BSPSFCBTF UFSÓBNPTEFFYFDVUBSBJOEB
$ git rebase --continue

1SPOUP'JOBMNFOUFGJOBMJ[BNPTOPTTPSFCBTFDPOGMJUBOUF6GB

4FRVJTÏTTFNPTBCPSUBSPSFCBTF WPMUBOEPËTJUVBÎÍPBOUFTEB
UFOUBUJWBEFNFTDMBHFN QPEFSÓBNPTFYFDVUBS git rebase -
-abort 

5BNCÏN QPEFSÓBNPT TJNQMFTNFOUF JHOPSBS P DPNNJU RVF


HFSPV P DPOGMJUP  QVMBOEPP  FYFDVUBOEP git rebase --
skip  &TTB PQÎÍP UFN EF TFS VTBEB DPN DVJEBEP 4Ø GB[
TFOUJEP RVBOEP FYBUBNFOUF B NFTNB BMUFSBÎÍP GPJ GFJUB OB
CSBODITFOEPNFTDMBEB

166 9.3 RESOLVENDO CONFLITOS APÓS UM REBASE


E-book gerado especialmente para Hugo Hiroshi - [email protected]
 64"/%0 6." '&33".&/5" 1"3"
3&40-7&3$0/'-*504
0DPOGMJUPRVFBDBCBNPTEFSFTPMWFSGPJCFNGÈDJM7JTVBMJ[BSP
BSRVJWP QBSB EFDJEJS DPNP NFTDMBS BT EJGFSFOUFT WFSTÜFT OÍP
EFNBOEPV HSBOEF FTGPSÎP 1PSÏN  BMHVNBT WF[FT UFNPT DPOGMJUPT
CFN EFTBGJBEPSFT  FN RVF Ï EJGÓDJM WJTVBMJ[BS DBEB USFDIP
DPOGMJUBOUFEPBSRVJWP

"MÏN EJTTP  QPEFNPT UFS WÈSJPT BSRVJWPT DPN DPOGMJUP QBSB


TFSFN TPMVDJPOBEPT &YQFSJÐODJB OP DØEJHP RVF FTUÈ TFOEP
EFTFOWPMWJEPFDBMNBTÍPGVOEBNFOUBJTQBSBOÍPJOTFSJSNPTFSSPT
BPSFTPMWFSDPOGMJUPT.BTVUJMJ[BSVNBGFSSBNFOUBBQSPQSJBEBQPEF
BVYJMJBSOBSBQJEF[OBTTVBTSFTPMVÎÜFT

$PN (JU  QPEFNPT JOWPDBS VNB GFSSBNFOUB EF SFTPMVÎÍP EF


DPOGMJUPTDPNPDPNBOEP
$ git mergetool

4FSJBNFYJCJEBTNFOTBHFOTQBSFDJEBTDPN
This message is displayed because 'merge.tool' is not
configured.
See 'git mergetool --tool-help' or 'git help config' for more
details. 'git mergetool' will now attempt to use one of the
following tools: meld opendiff kdiff3 tkdiff xxdiff
tortoisemerge gvimdiff diffuse diffmerge ecmerge p4merge araxis
bc3 codecompare emerge vimdiff
Merging:
index.html

Normal merge conflict for 'index.html':


{local}: modified file
{remote}: modified file
Hit return to start merge resolution tool (meld):

-FJBDPNBUFOÎÍPBNFOTBHFNBOUFSJPS3FQBSFRVFP(JUMJTUPV

9.4 USANDO UMA FERRAMENTA PARA RESOLVER CONFLITOS 167


E-book gerado especialmente para Hugo Hiroshi - [email protected]
BMHVNBT GFSSBNFOUBT QBSB SFTPMVÎÍP EF DPOGMJUPT DPNP .FME
IUUQNFMENFSHFPSH
 CFN TJNQMFT F FGFUJWB RVF GVODJPOB FN
8JOEPXT  .BD 04 F -JOVY  5PSUPJTF.FSHF
IUUQUPSUPJTFTWOOFU5PSUPJTF.FSHFIUNM
 CBTUBOUF VUJMJ[BEB
NBTTØQBSB8JOEPXT FOUSFPVUSBT

"MHVNBEBTGFSSBNFOUBTMJTUBEBTBOUFSJPSNFOUFTFSÈQSPDVSBEB
F JOWPDBEB /B NFOTBHFN BOUFSJPS  GPJ JOEJDBEB B GFSSBNFOUB
.FME1SFTTJPOBOEPBUFDMB Enter BGFSSBNFOUBÏBCFSUB

'JHVSB.FME GFSSBNFOUBEFSFTPMVÎÍPEFDPOGMJUPT

168 9.4 USANDO UMA FERRAMENTA PARA RESOLVER CONFLITOS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
1BSB EFGJOJS VNB GFSSBNFOUB QBESÍP QBSB SFTPMVÎÍP EF
DPOGMJUPTQPEFNPTVUJMJ[BSBDPOGJHVSBÎÍP merge.tool 

1PS FYFNQMP  QBSB TFNQSF VUJMJ[BS P .FME  QPEFSÓBNPT


FYFDVUBS git config --global merge.tool meld  0
DPNBOEP meld EFWFFTUBSOP1"5)EPTJTUFNBPQFSBDJPOBM

/P.FME PBSRVJWP index.html GPJBCFSUPËFTRVFSEBDPNP


DPOUFÞEP EB master  Ë EJSFJUB DPN P DPOUFÞEP EB CSBODI
design  F  OP DFOUSP  DPN P DPOUFÞEP BOUFSJPS ËT EVBT
NPEJGJDBÎÜFTDPOGMJUBOUFT%FWFNPTFEJUBSPBSRVJWPEPDFOUSP

%FQPJT EF SFTPMWJEP P DPOGMJUP VTBOEP P .FME F TBMWBS P


BSRVJWP TFFYFDVUBSNPT git status UFSFNPT
On branch master
Your branch is ahead of 'origin/master' by 5 commits.
(use "git push" to publish your local commits)

All conflicts fixed but you are still merging.


(use "git commit" to conclude merge)

Changes to be committed:

modified: index.html

Untracked files:
(use "git add <file>..." to include in what will be committed)

index.html.orig

/PUF RVF P BSRVJWP index.html  FTUÈ FOUSF BT NVEBOÎBT


QSPOUBT QBSB TFSFN DPNJUBEBT "MÏN EJTTP  GPJ DSJBEP VN OPWP
BSRVJWP DIBNBEP index.html.orig  DPN P DPOUFÞEP PSJHJOBM

9.4 USANDO UMA FERRAMENTA PARA RESOLVER CONFLITOS 169


E-book gerado especialmente para Hugo Hiroshi - [email protected]
BOUFT EP DPOGMJUP TFS SFTPMWJEP 0 BSRVJWP index.html.orig
QPEFTFSBQBHBEP

1PEFNPT  FOUÍP  DPNJUBS P BSRVJWP index.html  BHPSB TFN


DPOGMJUPT FYFDVUBOEP git commit -am "Resolvendo conflitos
após merge de design" /BTBÓEB UFSFNPT

[master b0418dc] Resolvendo conflitos após merge de design

170 9.4 USANDO UMA FERRAMENTA PARA RESOLVER CONFLITOS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
CAPÍTULO 10

."/&*3"4%&
53"#"-)"3$0.(*5

/P DBQÓUVMP 5SBCBMIBOEP DPN SFQPTJUØSJP MPDBM  WJNPT DPNP


USBCBMIBSDPNVNSFQPTJUØSJPMPDBMEP(JU DSJBOEPVNBNÈRVJOB
EP UFNQP QBSB P OPTTP DØEJHP +È OP DBQÓUVMP 5SBCBMIBOEP DPN
SFQPTJUØSJPSFNPUP WJNPTDPNPVUJMJ[BSSFQPTJUØSJPTSFNPUPTQBSB
DPNQBSUJMIBS OPTTP DØEJHP DPN PT PVUSPT NFNCSPT EB OPTTB
FRVJQF  BMÏN EF NBOUFS VN CBDLVQ EP SFQPTJUØSJP & OP DBQÓUVMP
)PTQFEBOEP P SFQPTJUØSJP OP (JU)VC  VUJMJ[BNPT P (JU)VC QBSB
UPSOBS OPTTP SFQPTJUØSJP SFNPUP BDFTTÓWFM EF RVBMRVFS MVHBS RVF
UFOIBBDFTTPËJOUFSOFU

%FQPJT  OPT DBQÓUVMPT 0SHBOJ[BOEP P USBCBMIP DPN CSBODIFTF


5SBCBMIBOEPFNFRVJQFDPNCSBODIFTSFNPUBT VUJMJ[BNPTCSBODIFT
MPDBJT F SFNPUBT QBSB USBCBMIBS FN QBSBMFMP FN EJGFSFOUFT
GVODJPOBMJEBEFT EF NBOFJSB PSHBOJ[BEB &TUVEBNPT UBNCÏN  OP
DBQÓUVMP$POUSPMBOEPWFSTÜFTEPDØEJHPDPNUBHT  DPNP NBSDBS BT
WFSTÜFTEFOPTTBTFOUSFHBTQPSNFJPEFUBHT/PDBQÓUVMP-JEBOEP
DPN DPOGMJUPT  BQSFOEFNPT DPNP MJEBS DPN DPOGMJUPT RVF
BDPOUFDFNBPNFTDMBSCSBODIFT

.BTDPNPVTBSUVEPJTTPRVFBQSFOEFNPTOPTFVQSPKFUP 2VBM
BNFMIPSNBOFJSBUSBCBMIBSDPNP(JUOPTFVDBTP

10 MANEIRAS DE TRABALHAR COM GIT 171


E-book gerado especialmente para Hugo Hiroshi - [email protected]
.PEFMPTEFEJTUSJCVJÎÍPEFSFQPTJUØSJPTFEFCSBODIFT
0 (JU Ï VN TJTUFNB EF DPOUSPMF EF WFSTÍP EJTUSJCVÓEP 5FNPT
MPDBMNFOUF VNB DØQJB DPNQMFUB EP SFQPTJUØSJP  RVF QPEFNPT
DPNQBSUJMIBS SFNPUBNFOUF "MÏN EJTTP  QPEFNPT BQPOUBS QBSB
NBJTEFVNSFQPTJUØSJPSFNPUP

1PSJTTP VNBEBTEFDJTÜFTRVFQSFDJTBNPTGB[FSÏPNPEFMPEF
EJTUSJCVJÎÍP EF SFQPTJUØSJPT B TFS BEPUBEP  EFGJOJOEP DPNP
PSHBOJ[BSPTSFQPTJUØSJPTSFNPUPT0TNPEFMPTNBJTVTBEPTTÍP

"QFOBTVNSFQPTJUØSJPSFNPUP DFOUSBM QBSBPOEFPT


SFQPTJUØSJPTMPDBJTBQPOUBN
$BEB EFTFOWPMWFEPS UFN TFV GPSL  VN SFQPTJUØSJP
SFNPUP RVF Ï VNB DØQJB EP QSPKFUP  VUJMJ[BOEP VN
SFQPTJUØSJPDFOUSBMQBSBJOUFHSBÎÍP
6NBIJFSBSRVJBEFSFQPTJUØSJPTQBSBJOUFHSBÎÍP

"P DPOUSÈSJP EF PVUSPT TJTUFNBT EF DPOUSPMF EF WFSTÍP  DSJBS
CSBODIFT OP (JU Ï BMHP NVJUP MFWF F SÈQJEP "MÏN EJTTP  P (JU Ï
NVJUPCPNFNGB[FSNFTDMBHFOTBVUPNÈUJDBT PRVFFODPSBKBPVTP
EFCSBODIFT

1PSUBOUP  PVUSB DPJTB RVF QSFDJTBNPT EFDJEJS Ï P NPEFMP EF


CSBODIFT B TFS VUJMJ[BEP OP OPTTP QSPKFUP "MHVOT EPT NPEFMPT
NBJTDPNVOTTÍP

6UJMJ[BSBQFOBTBCSBODI master 
5FS VNB CSBODI QBSB DBEB OPWB GVODJPOBMJEBEF
EFJYBOEP B master  QBSB DØEJHP QSPOUP QBSB TFS
FOUSFHVF
5FSBMHVNBTCSBODIFTQPSFUBQBEFEFTFOWPMWJNFOUP

172 10 MANEIRAS DE TRABALHAR COM GIT


E-book gerado especialmente para Hugo Hiroshi - [email protected]
DPNP VNB CSBODI EF MPOHP QSB[P QBSB DØEJHP BJOEB
FN DPOTUSVÎÍP  F VNB EF DVSUP QSB[P QBSB DPSSFÎÜFT
EFCVHTVSHFOUFT

&YJTUFNWÈSJPTGMVYPTEFUSBCBMIPQPTTÓWFJTBPTFUSBCBMIBSDPN
(JU7BNPTFTUVEBSPTNBJTDPNVOT

 65*-*;"/%0 4» " #3"/$) ."45&3


$0.6.3&104*5»3*0$&/53"-
6N EPT GMVYPT EF USBCBMIP NBJT TJNQMFT Ï VUJMJ[BS BQFOBT VN
SFQPTJUØSJP DFOUSBM IPTQFEBEP  QPS FYFNQMP  OP (JU)VC
DPNJUBOEPUVEPEJSFUBNFOUFOBCSBODIMPDBM master 

1BSBFOWJBSPTDPNNJUTMPDBJT DBEBEFTFOWPMWFEPSGB[VNQVTI
QBSB P SFQPTJUØSJP DFOUSBM 1PS JTTP  UPEPT PT NFNCSPT EB FRVJQF
EFWFNUFSQFSNJTTÜFTEFQVTI

'JHVSB3FQPTJUØSJPDFOUSBMTØDPNNBTUFS

$POTJEFSBOEPRVFUFNPTVNSFQPTJUØSJPQBSBPOPTTPQSPKFUP
DPOGJHVSBEPOP(JU)VC BQSJNFJSBDPJTBTFSJBGB[FS
$ git clone https://github.com/empresa/projeto.git

10.1 UTILIZANDO SÓ A BRANCH MASTER COM UM REPOSITÓRIO CENTRAL


173
E-book gerado especialmente para Hugo Hiroshi - [email protected]
"QØTPDMPOF UFNPTVNBDØQJBMPDBMDPNQMFUBEPSFQPTJUØSJP
1PEFNPT  FOUÍP  DSJBS OPWPT BSRVJWPT PV FEJUBS BSRVJWPT
FYJTUFOUFT 2VBOEP FTUJWFSNPT TBUJTGFJUPT DPN P DØEJHP  QPEFNPT
BEJDJPOBS BT BMUFSBÎÜFT Ë ÈSFB EF TUBHF F EFQPJT DPNJUÈMBT OB
master VUJMJ[BOEPDPNBOEPTDPNP

$ git add .
$ git commit -m "Otimizando consulta a clientes"

%FQPJT EF BMHVOT DPNNJUT  QPEFNPT DPNQBSUJMIBS OPTTP


USBCBMIPDPNBFRVJQF
$ git push origin master

%FQPJT EF UFSNPT QVCMJDBEP PT OPWPT DPNNJUT  PT PVUSPT


EFTFOWPMWFEPSFTQPEFNPCUÐMPTFYFDVUBOEP
$ git pull --rebase origin master

&ODPSBKBNPT P VTP EF VN git pull --rebase  BP PCUFS


NVEBOÎBT SFNPUBT  QPSRVF TJNQMJGJDB P IJTUØSJDP EP
SFQPTJUØSJP FWJUBOEPDPNNJUTEFNFSHF

4F PDPSSFS BMHVN DPOGMJUP OP NPNFOUP FN RVF PCUFNPT PT


OPWPT DPNNJUT  EFWFNPT SFTPMWFS PT QSPCMFNBT FEJUBOEP PT
BSRVJWPTBQSPQSJBEPTQBSBFOUÍPFYFDVUBS
$ git add .
$ git rebase --continue

2VBOEPFTUJWFSNPTQSPOUPTQBSBGB[FSVNBFOUSFHB QPEFNPT
NBSDÈMB DSJBOEP VNB UBH F  EFQPJT  FOWJBOEP FTTB UBH QBSB P
SFQPTJUØSJPDFOUSBM

174 10.1 UTILIZANDO SÓ A BRANCH MASTER COM UM REPOSITÓRIO


CENTRAL
E-book gerado especialmente para Hugo Hiroshi - [email protected]
$ git tag v1.0
$ git push origin --tags

2VBOEPVUJMJ[BS
1PEFNPT VTBS QBSB FRVJQFT QFRVFOBT PV OB BEPÎÍP EP (JU
2VBOEP USBCBMIBNPT FN FRVJQFT QFRVFOBT  DPN BUÏ 
EFTFOWPMWFEPSFT RVBOUPNBJTTJNQMFTPGMVYPEFUSBCBMIP NFMIPS
$PNP B FRVJQF Ï QFRVFOB  NVJUP QSPWBWFMNFOUF P QSPKFUP TFSÈ
QFRVFOPFUFSFNPTDPOUSPMFOPSJUNPEBTFOUSFHBT OÍPQSFDJTBOEP
EFVNGMVYPNBJTQPEFSPTP FDPNQMFYP


&TTF GMVYP Ï QBSFDJEP DPN B NBOFJSB DPNP TÍP DPNVNFOUF


VTBEPT TJTUFNBT EF DPOUSPMF EF WFSTÍP DFOUSBMJ[BEPT  DPNP P
4VCWFSTJPO1PSJTTP QBSBFRVJQFTRVFFTUÍPJOJDJBOEPDPNP(JU Ï
PGMVYPEFNBJTGÈDJMBEPÎÍP"FRVJQFQPEFGPDBSFNBQSFOEFSPT
DPNBOEPTCÈTJDPTEP(JU VUJMJ[BEPTQBSBMJEBSDPNVNSFQPTJUØSJP
MPDBM QBSBEFQPJTQBSUJSQBSBGMVYPTNBJTBWBOÎBEPT

7BOUBHFOT
"TJNQMJDJEBEFEFTTFGMVYPQFSNJUFVNBBEPÎÍPNBJT
USBORVJMBQBSBRVFNFTUÈDPNFÎBOEPBVUJMJ[BSPGMVYP
5BNCÏN IÈ NFOPT DPNQMJDBÎÍP QBSB FRVJQFT
SFEV[JEBT

² NBJT GÈDJM EF BEPUBS JOUFHSBÎÍP DPOUÓOVB  VNB


QSÈUJDB CBTUBOUF DPNVN FN QSPKFUPT RVF VTBN
NFUPEPMPHJBT ÈHFJT /FTTB QSÈUJDB  P DØEJHP EFWF TFS
JOUFHSBEP GSFRVFOUFNFOUF  EJTQBSBOEP CVJMET F UFTUFT
BVUPNBUJ[BEPT F EFUFDUBOEP FSSPT EF JOUFHSBÎÍP P
NBJTSÈQJEPQPTTÓWFM/FTTFGMVYP DPNPUPEBBMUFSBÎÍP

10.1 UTILIZANDO SÓ A BRANCH MASTER COM UM REPOSITÓRIO CENTRAL


175
E-book gerado especialmente para Hugo Hiroshi - [email protected]
Ï DPNJUBEB OB CSBODI master  UPEP DØEJHP
DPNQBSUJMIBEP EFQPJT EF VN QVTI TFSÈ JOUFHSBEP OB
master EPSFQPTJUØSJPDFOUSBM"DBEBOPWPQVTI P
CVJMEFPTUFTUFTBVUPNBUJ[BEPTQPEFNTFSEJTQBSBEPT
VUJMJ[BOEPFTTFDØEJHPJOUFHSBEP"MÏNEJTTP QPTTÓWFJT
DPOGMJUPTTÍPEFUFDUBEPTBDBEBQVMM

%FTWBOUBHFOT
"PDPSSJHJSEFGFJUPTVSHFOUFT QPEFTFSRVFPDØEJHPEF
OPWBT GVODJPOBMJEBEFT BJOEB FN EFTFOWPMWJNFOUP KÈ
UFOIB TJEP DPNQBSUJMIBEP OB CSBODI master  EP
SFQPTJUØSJPDFOUSBM$PNFTTFGMVYP GJDBEJGÓDJMTFQBSBS
P DØEJHP EB DPSSFÎÍP EP EFGFJUP EP DØEJHP EBT OPWBT
GVODJPOBMJEBEFT  P RVF QPEF HFSBS NBJT EFGFJUPT F
JOTBUJTGBÎÍPOPTDMJFOUFT

$PNP UVEP Ï DPNJUBEP OB CSBODI master  BT


FOUSFHBT TÍP GFJUBT DPN UPEP P DØEJHP RVF FTUÈ OP
SFQPTJUØSJP OP NPNFOUP EB FOUSFHB /ÍP Ï QPTTÓWFM
FOUSFHBS TØ QBSUF EBT GVODJPOBMJEBEFT RVF GPSBN
DPNQBSUJMIBEBTDPNPSFQPTJUØSJPDFOUSBM

)ÈBOFDFTTJEBEFEFQFSNJTTÍPEFQVTIQBSBUPEPTPT
NFNCSPT EB FRVJQF OP SFQPTJUØSJP DFOUSBM  KÈ RVF IÈ
BQFOBT VN SFQPTJUØSJP SFNPUP 1BSB QSPKFUPT PQFO
TPVSDF ÏBMHPJOWJÈWFM1BSBQSPKFUPTFFRVJQFTNVJUP
HSBOEFT QPEFUBNCÏNTFSVNQSPCMFNB

 65*-*;"/%0 #3"/$)&4 103


'6/$*0/"-*%"%& $0. 6. 3&104*5»3*0

176 10.2 UTILIZANDO BRANCHES POR FUNCIONALIDADE COM UM


REPOSITÓRIO CENTRAL
E-book gerado especialmente para Hugo Hiroshi - [email protected]
$&/53"-
1PEFNPT VUJMJ[BS CSBODIFT QBSB JTPMBS P DØEJHP EF OPWBT
GVODJPOBMJEBEFT PV BMUFSBÎÜFT FN GVODJPOBMJEBEFT FYJTUFOUFT "
CSBODI master  QBTTB B TFS USBUBEB EF NBOFJSB FTQFDJBM  GJDBOEP
FTUÈWFM EVSBOUF UPEP P EFTFOWPMWJNFOUP EP QSPKFUP 4Ø RVBOEP B
GVODJPOBMJEBEF FTUJWFS QSPOUB  Ï GFJUP VN NFSHF EB CSBODI EB
GVODJPOBMJEBEFOB master 

4FGPSQSFDJTPSFBMJ[BSVNBDPSSFÎÍPVSHFOUF QPEFTFSVTBEBB
CSBODI master  EJSFUBNFOUF 1BSB DPSSFÎÜFT PV BMUFSBÎÜFT NBJT
EFNPSBEBT QPEFNTFSDSJBEBTCSBODIFTQBSBTFHSFHBSPTDPNNJUT
EBDPSSFÎÍP

&TTB NBOFJSB EF USBCBMIBS UBNCÏN Ï DIBNBEB EF GFBUVSF


CSBODIJOH PVUPQJDCSBODIJOH

'JHVSB3FQPTJUØSJPDFOUSBMDPNCSBODIFTQPSGVODJPOBMJEBEF

7BNPT EJ[FS RVF UFNPT VN SFQPTJUØSJP MPDBM DMPOBEP B QBSUJS


EFVNSFQPTJUØSJPEP(JU)VC DPNPGJ[FNPTBOUFSJPSNFOUF DPNP
DPNBOEP git clone
https://github.com/empresa/projeto.git 

10.2 UTILIZANDO BRANCHES POR FUNCIONALIDADE COM UM REPOSITÓRIO


CENTRAL 177
E-book gerado especialmente para Hugo Hiroshi - [email protected]
"GVODJPOBMJEBEFBTFSEFTFOWPMWJEBÏBDSJBÎÍPEFQFEJEPTEF
OPTTB MPKB POMJOF "OUFT EF DPNFÎBS  WBNPT DSJBS B QBSUJS EB
master  VNB CSBODI DIBNBEB pedidos  KÈ NVEBOEP QSB FTTB
OPWBCSBODI
$ git checkout -b pedidos

+È OB CSBODI pedidos  QPEFNPT DPNFÎBS B USBCBMIBS OB


GVODJPOBMJEBEF  DSJBOEP OPWPT BSRVJWPT F BMUFSBOEP BSRVJWPT
FYJTUFOUFT &N TFHVJEB  QPEFNPT FGFUVBS DPNNJUT DPN PT
DPNBOEPTRVFKÈDPOIFDFNPT
$ git add .
$ git commit -m "Tela inicial de pedidos"

%FQPJT EF BMHVOT DPNNJUT  NFTNP TFN UFSNPT UFSNJOBEP B


GVODJPOBMJEBEF EF QFEJEPT  QPEFNPT DPNQBSUJMIBS P DØEJHP RVF
GJ[FNPTFOWJBOEPPQBSBPSFQPTJUØSJPDFOUSBM#BTUBFYFDVUBS
$ git push origin pedidos

$PN P DØEJHP OP SFQPTJUØSJP DFOUSBM  UFNPT VN CBDLVQ EP


DØEJHP F PVUSPT NFNCSPT EB OPTTB FRVJQF QPEFN PCUÐMP QBSB
DPMBCPSBS OP EFTFOWPMWJNFOUP EB GVODJPOBMJEBEF 5VEP JTTP TFN
BGFUBSBFTUBCJMJEBEFEBCSBODI master 

0 SFTUBOUF EB OPTTB FRVJQF  QBSB QPEFS USBCBMIBS OB


GVODJPOBMJEBEF  QSFDJTB PCUFS BT ÞMUJNBT BMUFSBÎÜFT EP SFQPTJUØSJP
DFOUSBMF FNTFHVJEB DSJBSVNBDØQJBMPDBMEBCSBODI pedidos 
1BSBJTTP EFWFTFFYFDVUBS
$ git fetch origin
$ git checkout -t origin/pedidos

/ØT F PVUSPT NFNCSPT EB FRVJQF QPEFNPT GB[FS DPNNJUT F


RVBOEP BQSPQSJBEP  DPNQBSUJMIBS P DØEJHP QPS NFJP EP

178 10.2 UTILIZANDO BRANCHES POR FUNCIONALIDADE COM UM


REPOSITÓRIO CENTRAL
E-book gerado especialmente para Hugo Hiroshi - [email protected]
SFQPTJUØSJPDFOUSBMQPSNFJPEPDPNBOEP
$ git push origin pedidos

1BSB PCUFSNPT P OPWP DØEJHP EB GVODJPOBMJEBEF  BJOEB OB


CSBODI pedidos EFWFNPTGB[FS
$ git pull --rebase origin pedidos

/PDBTPEFDPOGMJUPTBQØTPQVMMDPNSFCBTF EFWFNPTNFTDMBS
PTBSRVJWPTNBOVBMNFOUFFFYFDVUBS
$ git add .
$ git rebase --continue

"CSBODI pedidos  EP SFQPTJUØSJP DFOUSBM UFSÈ P DØEJHP RVF


JOUFHSBBTNVEBOÎBTEFUPEPTPTNFNCSPTEBFRVJQF5FTUBEPSFTF
PVUSPTJOUFSFTTBEPTQPEFNVUJMJ[BSPDØEJHPEBCSBODI pedidos
QBSB WFSJGJDBS P BOEBNFOUP EBT BUJWJEBEFT F EFUFDUBS QSPCMFNBT
3FWJTBSBRVBMJEBEFEPDØEJHP QPSFYFNQMP GJDBNBJTGÈDJM QPSRVF
BTNVEBOÎBTSFMBDJPOBEBTËGVODJPOBMJEBEFGJDBNJTPMBEBT

$BTP IBKB BMHVNB BMUFSBÎÍP GFJUB EJSFUBNFOUF OB master


DPNP VNB DPSSFÎÍP EF VN EFGFJUP VSHFOUF  Ï JNQPSUBOUF PCUÐMB
OPSFQPTJUØSJPMPDBM1BSBJTTP DPOUJOVBOEPOBCSBODI pedidos
EFWFNPTFYFDVUBS
$ git pull --rebase origin master

10.2 UTILIZANDO BRANCHES POR FUNCIONALIDADE COM UM REPOSITÓRIO


CENTRAL 179
E-book gerado especialmente para Hugo Hiroshi - [email protected]
0 DPNBOEP BOUFSJPS PCUÏN BT NVEBOÎBT EB CSBODI SFNPUB
origin/master  F KÈ GB[ P SFCBTF OB CSBODI BUVBM  RVF Ï B
pedidos 4FSJBFRVJWBMFOUFËTFRVÐODJBEFDPNBOEPT

$ git checkout master


$ git pull origin master
$ git checkout pedidos
$ git rebase master

" EJGFSFOÎB Ï RVF  OFTTB ÞMUJNB TFRVÐODJB  B CSBODI MPDBM


master  GJDBSJB BUVBMJ[BEB DPN BT ÞMUJNBT NVEBOÎBT EB
origin/master 

2VBOEPBFRVJQFFTUJWFSTBUJTGFJUBDPNBGVODJPOBMJEBEFFDPN
P DØEJHP  BMHVN EPT EFTFOWPMWFEPSFT QPEF GB[FS P NFSHF OB
CSBODI master "OUFT  Ï JNQPSUBOUF OPT DFSUJGJDBSNPT EF RVF B
CSBODI master  DPOUÏN BT ÞMUJNBT NPEJGJDBÎÜFT EP SFQPTJUØSJP
DFOUSBM

1PEFNPT VUJMJ[BS VN QVMM TFN SFCBTF QBSB EFJYBSNPT B


master  JOUBDUB ² USBORVJMP GB[FS P QVMM TFN SFCBTF OFTTF DBTP
QPSRVF NVJUPQSPWBWFMNFOUF TFSÈGFJUPVNNFSHFEPFTUJMPGBTU
GPSXBSE  KÈ RVF OÍP Ï DPNVN GB[FSNPT DPNNJUT EJSFUBNFOUF OB
master 

/BCSBODI pedidos EFWFNPTFYFDVUBSPTDPNBOEPT


$ git checkout master
$ git pull origin master
$ git merge pedidos

180 10.2 UTILIZANDO BRANCHES POR FUNCIONALIDADE COM UM


REPOSITÓRIO CENTRAL
E-book gerado especialmente para Hugo Hiroshi - [email protected]
)È DBTPT FN RVF B FRVJQF UFN NVJUPT NFNCSPT FPV UFN
QSPCMFNBT OB DPNVOJDBÎÍP &N WF[ EP NFSHF  UBMWF[ TFKB
NFMIPS GB[FS VN git pull origin pedidos  BJOEB OB
CSBODI master
 5BNCÏN TFSJB SFBMJ[BEP VN NFSHF  NBT
DPNQPTTÓWFJTBMUFSBÎÜFTEFÞMUJNBIPSB

/P DBTP EF DPOGMJUPT OP NFSHF EB CSBODI EB GVODJPOBMJEBEF
EFWFNPTSFTPMWFSPTDPOGMJUPTNBOVBMNFOUFQBSBEFQPJTFYFDVUBS
$ git add .
$ git commit -m "Resolvendo conflitos no merge de pedidos"

%FQPJT EF SFBMJ[BEP P NFSHF EB CSBODI pedidos  DPN B


CSBODI MPDBM master  QPEFNPT DPNQBSUJMIBS P DØEJHP
FYFDVUBOEP
$ git push origin master

/PNPNFOUPBEFRVBEP QPEFNPTMJCFSBSVNBOPWBWFSTÍPEP
TJTUFNB NBSDBOEPBFOUSFHBDPNVNBUBHQPSNFJPEPDPNBOEP
git tag v1.0 FDPNQBSUJMIBOEPBUBHDSJBEBDPNPDPNBOEP $
git push origin --tags 

4F OÍP RVJTFSNPT FOUSFHBS BMHVNB GVODJPOBMJEBEF OB OPWB


WFSTÍP EP TJTUFNB  CBTUB OÍP GB[FSNPT P NFSHF EB CSBODI EB
GVODJPOBMJEBEFOBCSBODI master 

2VBOEPVUJMJ[BS
&N QSPKFUPT VN QPVDP NBJPSFT  QSJODJQBMNFOUF TF KÈ UJWFSFN
BMHVNBT FOUSFHBT GFJUBT ² JNQPSUBOUF RVF B FRVJQF UFOIB

10.2 UTILIZANDO BRANCHES POR FUNCIONALIDADE COM UM REPOSITÓRIO


CENTRAL 181
E-book gerado especialmente para Hugo Hiroshi - [email protected]
GBNJMJBSJEBEFOPVTPEP(JU

1BSB QSPKFUPT RVF KÈ FTUÍP B UPEP WBQPS  DPN NFMIPSJBT F


DPSSFÎÜFT RVF QSFDJTBN TFS GFJUBT EF JNFEJBUP  JTPMBS DØEJHP RVF
BJOEB FTUÈ TFOEP EFTFOWPMWJNFOUP Ï BMHP JNQPSUBOUF $PN P VTP
EF VNB CSBODI QBSB DBEB GVODJPOBMJEBEF  QPEFNPT PSHBOJ[BS P
EFTFOWPMWJNFOUP EBT OPWBT GVODJPOBMJEBEFT EF NBOFJSB B OÍP
BGFUBSEFNBOEBTVSHFOUFT

1BSB RVF FTTF GMVYP TFKB VTBEP DPN GMVÐODJB  Ï QSFDJTP RVF PT
EFTFOWPMWFEPSFTKÈFTUFKBNDPOGPSUÈWFJTDPNPVTPCÈTJDPEP(JU

7BOUBHFOT
1PEFNPT JTPMBS DØEJHP NBJT FTUÈWFM OB CSBODI
master  GBDJMJUBOEP B SFBMJ[BÎÍP EF NFMIPSJBT F
DPSSFÎÜFTJNFEJBUBT

3FWJTÜFT EB RVBMJEBEF EP OPWP DØEJHP RVF


JNQMFNFOUB VNB GVODJPOBMJEBEF QPEFN TFS GFJUBT
BOBMJTBOEPPTDPNNJUTEBCSBODIEBGVODJPOBMJEBEF

1PEF TFS FOUSFHVF BQFOBT QBSUF EBT GVODJPOBMJEBEFT


RVF FTUÍP TFOEP EFTFOWPMWJEBT  QPTTJCJMJUBOEP
NVEBOÎBTNBJTUSBORVJMBTOBFTUSBUÏHJBEFOFHØDJPEP
OPTTPDMJFOUF

%FTWBOUBHFOT
$PNPBFRVJQFQSFDJTBEPNJOBSP(JUSB[PBWFMNFOUF
CFN PVTPEFTTFGMVYPOPJOÓDJPEBBEPÎÍPEP(JUGJDB
EJGJDVMUBEP

182 10.2 UTILIZANDO BRANCHES POR FUNCIONALIDADE COM UM


REPOSITÓRIO CENTRAL
E-book gerado especialmente para Hugo Hiroshi - [email protected]
$PNPUSBCBMIBNPTDPNVNSFQPTJUØSJPDFOUSBM BJOEB
IÈBOFDFTTJEBEFEFQFSNJTTÍPEFQVTIQBSBUPEPTPT
NFNCSPT EB FRVJQF 1PS JTTP  FTTF GMVYP QPEF TFS
QSPCMFNÈUJDPQBSBHSBOEFTFRVJQFTFUPSOBTFJOWJÈWFM
QBSBQSPKFUPTPQFOTPVSDF

0 DØEJHP EF VNB GVODJPOBMJEBEF TØ Ï FGFUJWBNFOUF


JOUFHSBEP DPN PVUSBT NVEBOÎBT OP NPNFOUP EP
NFSHF GJOBM DPN B CSBODI master  $PN PVUSBT
GVODJPOBMJEBEFT FN EFTFOWPMWJNFOUP  QPTTÓWFJT
DPOGMJUPT FOUSF P DØEJHP EBT GVODJPOBMJEBEFT TØ TFSÍP
EFTDPCFSUPT UBSEJBNFOUF  BP NFTDMBSNPT UPEBT BT
CSBODIFT

3FBMJ[BS JOUFHSBÎÍP DPOUÓOVB  EFTDPCSJOEP QSPCMFNBT


OP DØEJHP F OBT GVODJPOBMJEBEFT SBQJEBNFOUF  GJDB
NBJTEJGÓDJM"HSBOEFWBOUBHFNEFTTFGMVYP RVFÏBEF
JTPMBS DØEJHP EBT GVODJPOBMJEBEFT  UPSOBTF B QJPS
EFTWBOUBHFN TPC B ØUJDB EF JOUFHSBÎÍP DPOUÓOVB 1PS
JTTP  FTQFDJBMJTUBT FN JOUFHSBÎÍP DPOUÓOVB OÍP
SFDPNFOEBN P VTP EF CSBODIFT QPS GVODJPOBMJEBEF
GBWPSFDFOEP P JTPMBNFOUP EBT GVODJPOBMJEBEFT DPN
VNB BSRVJUFUVSB NBJT NPEVMBS  VUJMJ[BOEP BCTUSBÎÜFT
QBSB HSBOEFT BMUFSBÎÜFT OP DØEJHP CSBODI CZ
BCTUSBDUJPO
 F DPOGJHVSBÎÜFT QBSB EFTBCJMJUBS
GVODJPOBMJEBEFTOPWBT GFBUVSFUPHHMFT


65*-*;"/%0#3"/$)&4103&5"1"%&
%&4&/70-7*.&/50 $0. 6.
3&104*5»3*0$&/53"-

10.3 UTILIZANDO BRANCHES POR ETAPA DE DESENVOLVIMENTO COM UM


REPOSITÓRIO CENTRAL 183
E-book gerado especialmente para Hugo Hiroshi - [email protected]
"PDPNJUBSNPTVNOPWPDØEJHPFNVNBCSBODITFQBSBEBQBSB
VNBGVODJPOBMJEBEFFTQFDÓGJDB NBOUFNPTBCSBODIMPDBM master
FTUÈWFM NBTDPSSFNPTPSJTDPEFBEJBSEFNBJTBJOUFHSBÎÍPFOUSFPT
DØEJHPT EBT OPWBT GVODJPOBMJEBEFT &TTB EFNPSB QPEF MFWBS B
EFGFJUPTRVFEFJYBSJBNOPTTPTDMJFOUFTJOTBUJTGFJUPT

1BSBFWJUBSBJOUFHSBÎÍPUBSEJBEBTGVODJPOBMJEBEFT QPEFSÓBNPT
UFS VNB CSBODI QBSB DØEJHP BJOEB FN EFTFOWPMWJNFOUP  DIBNBEB
desenv 4FSJBVNBCSBODIEFMPOHPQSB[P RVFFYJTUJSJBFORVBOUP
P QSPKFUP FTUJWFS TFOEP EFTFOWPMWJEP " CSBODI master  UFSJB
DØEJHP KÈ QSPOUP QBSB TFS FOUSFHVF +È B CSBODI desenv  UFSJB
DØEJHPQBSBBQSØYJNBFOUSFHB2VBOEPUJWFSNPTVNQPOUPFTUÈWFM
OPOPWPDØEJHP GBSÓBNPTVNNFSHFEB desenv OB master 

1PEFNPT DPOUJOVBS VUJMJ[BOEP CSBODIFT QPS GVODJPOBMJEBEF


NBT  BHPSB  DSJBOEPBT B QBSUJS EB CSBODI desenv 
1FSJPEJDBNFOUF  QPEFSÓBNPT FGFUVBS VN NFSHF QSFDPDF EBT
CSBODIFT EBT GVODJPOBMJEBEFT  NFTNP BOUFT EF P DØEJHP FTUBS
UPUBMNFOUF GJOBMJ[BEP "TTJN  FWJUBSÓBNPT B JOUFHSBÎÍP UBSEJB F
EFJYBSÓBNPTEFBGFUBSBCSBODI master 

4FSJBJOUFSFTTBOUFUFSNPTCSBODIFTEFSFMFBTFQBSBDPNJUBSNPT
DØEJHP SFGFSFOUF B VNB EFUFSNJOBEB FOUSFHB  DPNP DPSSFÎÜFT EF
ÞMUJNB IPSB EF QFRVFOPT CVHT EFTDPCFSUPT MPHP BOUFT EF MJCFSBS
VNBWFSTÍP5FSJBNOPNFTDPNP release1.1 PV release2.0
FTFSJBNDSJBEBTBQBSUJSEB desenv 

5BNCÏN QPEFSJBN TFS DPNJUBEPT OFTTBT CSBODIFT EF SFMFBTF


DØEJHPTOFDFTTÈSJPTQBSBQSFQBSBSVNBFOUSFHB DPNPBSRVJWPTEF
WFSTÍP F SFMFBTF OPUFT 4FSJBN CSBODIFT EF DVSUP QSB[P  RVF
QPEFSJBN TFS EFMFUBEBT RVBOEP OÍP GJ[FSFN NBJT TFOUJEP 0T
DPNNJUT EBT DPSSFÎÜFT GFJUBT OFTTBT CSBODIFT EF SFMFBTF

184 10.3 UTILIZANDO BRANCHES POR ETAPA DE DESENVOLVIMENTO COM


UM REPOSITÓRIO CENTRAL
E-book gerado especialmente para Hugo Hiroshi - [email protected]
QSFDJTBSJBNTFSBQMJDBEPTOB master FOB desenv QPSNFJPEF
VNNFSHF

1BSB CVHT VSHFOUFT  RVF BGFUBN WFSTÜFT FN QSPEVÎÍP


QPEFSÓBNPTDSJBSVNBCSBODIEFIPUGJY4FFTUJWFSNPTDPNBWFSTÍP
1.0 FNQSPEVÎÍPFBDPOUFDFSVNEFGFJUPRVFQPEFTFSDPSSJHJEP
EFNBOFJSBJNFEJBUB QPEFSÓBNPTDSJBSBCSBODI hotfix-1.0.1 B
QBSUJS EB master  " DPSSFÎÍP TFSJB GFJUB OFTTB OPWB CSBODI F
RVBOEPGJOBMJ[BEB GBSÓBNPTVNNFSHFOBCSBODI master 

5BNCÏN Ï JNQPSUBOUF FGFUVBSNPT VN NFSHF OB CSBODI


desenv  QBSB PCUFSNPT B DPSSFÎÍP EP EFGFJUP 6NB CSBODI EF
IPUGJYÏEFDVSUPQSB[PF EFQPJTEFGFJUPPNFSHF QPEFNPTBQBHÈ
MB

'JHVSB3FQPTJUØSJPDFOUSBMDPNCSBODIFTQPSFUBQBEFEFTFOWPMWJNFOUP

$PNP OPT GMVYPT EF USBCBMIP BOUFSJPSFT  DBEB EFTFOWPMWFEPS


EFWFGB[FSPDMPOFEPSFQPTJUØSJPDFOUSBMFYFDVUBOEP QPSFYFNQMP
git clone https://github.com/empresa/projeto.git 

10.3 UTILIZANDO BRANCHES POR ETAPA DE DESENVOLVIMENTO COM UM


REPOSITÓRIO CENTRAL 185
E-book gerado especialmente para Hugo Hiroshi - [email protected]
-PHP OP JOÓDJP EP QSPKFUP  PV FN BMHVN PVUSP NPNFOUP
BQSPQSJBEP QPEFNPTDSJBSVNBCSBODIMPDBMDIBNBEB desenv B
QBSUJS EB master  QBSB DPNJUBSNPT DØEJHP BJOEB FN
EFTFOWPMWJNFOUP5BNCÏNÏJNQPSUBOUFRVFFTTBCSBODIFYJTUBOP
SFQPTJUØSJP DFOUSBM 1BSB JTTP  VN EPT EFTFOWPMWFEPSFT EFWF
FYFDVUBS
$ git branch desenv
$ git push origin desenv

1BSB DPNFÎBSFN B USBCBMIBS OB CSBODI desenv  PT


EFTFOWPMWFEPSFTQSFDJTBNDSJBSVNBCSBODIMPDBMRVFBQPOUBQBSB
B CSBODI SFNPUB origin/desenv  EP SFQPTJUØSJP DFOUSBM 1BSB
JTTP EFWFNFYFDVUBS
$ git fetch origin
$ git checkout -t origin/desenv

1BSBUSBCBMIBSNPTFNVNBOPWBGVODJPOBMJEBEF QPSFYFNQMP
EFFTUPRVF
QPEFNPTDSJBSVNBCSBODIQBSBFTTBGVODJPOBMJEBEFB
QBSUJSEBCSBODI desenv FYFDVUBOEP
$ git checkout -b estoque desenv

1PEFNPT FGFUVBS BMHVOT DPNNJUT F  EFQPJT  DPNQBSUJMIBS B


CSBODI DPN B OPTTB FRVJQF QFMP DPNBOEP git push origin
estoque 

/P NPNFOUP BEFRVBEP  EFWFNPT GB[FS P NFSHF EB


GVODJPOBMJEBEF estoque OBCSBODI desenv  JOUFHSBOEPB DPN
BT PVUSBT GVODJPOBMJEBEFT RVF KÈ GPSBN NFTDMBEBT DPN desenv 
1PSÏN  BOUFT EP NFSHF  Ï JNQPSUBOUF PCUFSNPT BT ÞMUJNBT
NVEBOÎBT FN desenv  GFJUBT QFMPT PVUSPT NFNCSPT EB OPTTB
FRVJQFBUSBWÏTEFVNQVMMEF origin/desenv 

186 10.3 UTILIZANDO BRANCHES POR ETAPA DE DESENVOLVIMENTO COM


UM REPOSITÓRIO CENTRAL
E-book gerado especialmente para Hugo Hiroshi - [email protected]
%FQPJT EP NFSHF  QPEFNPT DPNQBSUJMIBS B CSBODI desenv
RVFKÈUFSÈPTÞMUJNPTDPNNJUTEB estoque 1BSBGB[FSJTTPUVEP
DPOTJEFSBOEP RVF FTUBNPT OB CSBODI estoque  EFWFNPT
FYFDVUBS
$ git pull origin desenv
$ git checkout desenv
$ git merge estoque
$ git push origin desenv

1PEFNPT SFQFUJS PT DPNBOEPT BOUFSJPSFT TFNQSF RVF


RVJTFSNPT JOUFHSBS B CSBODI EB GVODJPOBMJEBEF estoque  DPN B
CSBODI desenv "PUFSNJOBSNPTBGVODJPOBMJEBEF EFWFNPTGB[FS
VN ÞMUJNP NFSHF FN desenv  4F RVJTFSNPT  QPEFNPT EFMFUBS
OPTTB CSBODI MPDBM estoque  DPN P DPNBOEP git branch -d
estoque 

2VBOEP FTUJWFSNPT TBUJTGFJUPT DPN BT GVODJPOBMJEBEFT RVF


GPSBNNFTDMBEBTOBCSBODI desenv QPEFNPTDSJBSVNBCSBODI
QBSB B QSØYJNB SFMFBTF DPN VN OPNF DPNP release-1.0  B
QBSUJSEB desenv 1BSBJTTP EFWFNPTFYFDVUBS
$ git checkout -b release-1.0 desenv

/BCSBODI release-1.0 QPEFNPTDPNJUBS QPSFYFNQMP VN


BSRVJWP MJTUBOEP BT OPWBT GVODJPOBMJEBEFT P SFMFBTF OPUFT

NPEJGJDBSBSRVJWPTQBSBQSFQBSBSBFOUSFHB"MÏNEJTTP QPEFNPT
DPNJUBS DPSSFÎÜFT EF QFRVFOPT CVHT RVF EFTDPCSJSNPT BOUFT EF
MJCFSBS B OPWB WFSTÍP &ORVBOUP JTTP  PVUSPT EFTFOWPMWFEPSFT
QPEFN DPNFÎBS B USBCBMIBS OBT GVODJPOBMJEBEFT EB QSØYJNB
FOUSFHB DPNJUBOEPOBCSBODI desenv 

1BSBGFDIBSNPTBOPWBWFSTÍP EFWFNPTGB[FSPNFSHFEBOPTTB
CSBODI release-1.0  OB CSBODI master  1BSB JTTP  EFWFNPT

10.3 UTILIZANDO BRANCHES POR ETAPA DE DESENVOLVIMENTO COM UM


REPOSITÓRIO CENTRAL 187
E-book gerado especialmente para Hugo Hiroshi - [email protected]
FYFDVUBSPTDPNBOEPT
$ git checkout master
$ git merge release-1.0
$ git push origin master

5BNCÏNÏJNQPSUBOUF BJOEBOBCSBODI master NBSDBNPTB


OPWBWFSTÍPDPNVNBUBH
$ git tag v1.0
$ git push origin --tags

4FUJWFSNPTDPNJUBEPDPSSFÎÜFTEFCVHTOBCSBODI release-
1.0  Ï JNQPSUBOUF BQMJDBSNPT P DØEJHP DPSSJHJEP OB CSBODI
desenv QPSNFJPEFVNNFSHF1BSBJTTP EFWFNPTFYFDVUBS

$ git checkout desenv


$ git merge release-1.0
$ git push origin desenv

4F RVJTFSNPT  QPEFNPT EFMFUBS B CSBODI MPDBM release-1.0


QFMPDPNBOEP git branch -d release-1.0 

$BTP BDPOUFÎB VN CVH FN QSPEVÎÍP RVF EFWF TFS DPSSJHJEP
JNFEJBUBNFOUF  QPEFNPT DSJBS VNB CSBODI QBSB USBCBMIBSNPT OB
DPSSFÎÍP 4F B WFSTÍP BUVBM GPS B 1.0  QPEFSÓBNPT DIBNÈMB EF
hotfix-1.0.1  +È RVF B CSBODI master  DPOUÏN P DØEJHP EB
ÞMUJNB WFSTÍP MJCFSBEB QBSB QSPEVÎÍP  EFWFNPT DSJBS B OPWB
CSBODI EF DPSSFÎÍP B QBSUJS EB NBTUFS 1BSB DSJÈMB  EFWFNPT
FYFDVUBS
$ git checkout -b hotfix-1.0.1 master

%FQPJTEFEFTDPCSJNPTBDBVTBEPEFGFJUPFUFSNPTDPNJUBEPP
DØEJHP DPN B DPSSFÎÍP  QPEFNPT GB[FS P NFSHF EB CSBODI
hotfix-1.0.1 OBCSBODI master &OUÍP EFWFNPTFYFDVUBS

$ git checkout master

188 10.3 UTILIZANDO BRANCHES POR ETAPA DE DESENVOLVIMENTO COM


UM REPOSITÓRIO CENTRAL
E-book gerado especialmente para Hugo Hiroshi - [email protected]
$ git merge hotfix-1.0.1
$ git tag 1.0.1

/ÍP QPEFNPT FTRVFDFS EF BQMJDBS B DPSSFÎÍP EP EFGFJUP OB


CSBODI desenv  RVF DPOUÏN P DØEJHP RVF FTUÈ TFOEP
EFTFOWPMWJEP1PEFNPTGB[FSJTTPFYFDVUBOEP
$ git checkout desenv
$ git merge hotfix-1.0.1

'FJUPT PT NFSHFT EB CSBODI hotfix-1.0.1  OBT CSBODIFT


master  F desenv  QPEFNPT BQBHÈMB DPN P DPNBOEP git
branch -d hotfix-1.0.1 

2VBOEPVUJMJ[BS
&N QSPKFUPT DPNQMFYPT  RVF KÈ UÐN WÈSJBT FOUSFHBT F DPN
EJWFSTBT OPWBT GVODJPOBMJEBEFT FN EFTFOWPMWJNFOUP " FRVJQF KÈ
EFWFUFSVNCPNEPNÓOJPEP(JU

&TTF GMVYP RVF VTB CSBODIFT QPS FUBQB EF EFTFOWPMWJNFOUP


EFJYB P USBCBMIP CBTUBOUF PSHBOJ[BEP " CSBODI EF
EFTFOWPMWJNFOUP TFSWF DPNP VNB CSBODI EF JOUFHSBÎÍP QBSB BT
EJGFSFOUFTCSBODIFTEFGVODJPOBMJEBEF+ÈBCSBODI master OÍPÏ
BGFUBEBQFMPEJBBEJB GJDBOEPCBTUBOUFFTUÈWFM QPSRVFTØUFNOPWP
DØEJHPOPTNPNFOUPTEFFOUSFHBFDPSSFÎÜFTVSHFOUFT

"KVTUFT GJOPT F DØEJHP QBSB QSFQBSBS B FOUSFHB UFN TFV MVHBS


OBT CSBODIFT EF SFMFBTF #VHT VSHFOUFT QPEFN TFS DPSSJHJEPT OBT
CSBODIFTEFIPUGJY

%FWJEP Ë DPNQMFYJEBEF OP VTP EBT WBSJBEBT CSBODIFT QBSB


USBCBMIBS EFTTB NBOFJSB  P EPNÓOJP EPT DPODFJUPT EP (JU QFMPT
NFNCSPTEBFRVJQFÏCBTUBOUFJNQPSUBOUF

10.3 UTILIZANDO BRANCHES POR ETAPA DE DESENVOLVIMENTO COM UM


REPOSITÓRIO CENTRAL 189
E-book gerado especialmente para Hugo Hiroshi - [email protected]
6NGMVYPQBSFDJEPDPNFTTFÏDIBNBEPQPSBMHVOTEF(JUGMPX
NBT OÍP Ï VN GMVYP PGJDJBM  BQFTBS EP BQFMJEP 'PJ EFTDSJUP QPS
7JODFOU %SJFTTFO FN   FN TFV CMPH IUUQOWJFDPNQPTUTB
TVDDFTTGVMHJUCSBODIJOHNPEFM

7BOUBHFOT
" CSBODI master  GJDB CFN FTUÈWFM  QPEFOEP TFS
VUJMJ[BEB BUÏ QBSB EJTQBSBS JNQMBOUBÎÜFT BVUPNÈUJDBT
EPTPGUXBSF

$POTFHVJNPT EFTDPCSJS DPOGMJUPT PV FSSPT FOUSF


DØEJHPT EBT OPWBT GVODJPOBMJEBEFT NBJT DFEP TF
NFTDMBSNPT BT CSBODIFT EBT GVODJPOBMJEBEFT OB
CSBODI desenv QFSJPEJDBNFOUF

$PNP VTBNPT CSBODIFT QPS GVODJPOBMJEBEF  SFWJTÜFT


EPDØEJHPEBTGVODJPOBMJEBEFTÍPGÈDFJTEFGB[FS

1PEFNPT FOUSFHBS BQFOBT QBSUF EBT GVODJPOBMJEBEFT


CBTUBOEP EFJYBS P DØEJHP JTPMBEP OB CSBODI EB
GVODJPOBMJEBEF RVF OÍP FOUSBSÈ OB OPWB WFSTÍP
1PSÏN  TF GJ[FSNPT JOUFHSBÎÜFT QFSJØEJDBT FN
desenv JTTPQPEFTFSVNEFTBGJP

$PSSFÎÜFTVSHFOUFTUÐNVNMVHBSEFGJOJEPOFTTFGMVYP
BTCSBODIFTEFIPUGJY

5SBCBMIPSFMBDJPOBEPDPNBQSFQBSBÎÍPEFVNBOPWB
WFSTÍP F BKVTUFT GJOPT BOUFT EB MJCFSBÎÍP QPEFN TFS
GFJUPTFNVNBCSBODIEFSFMFBTF

%FTWBOUBHFOT

190 10.3 UTILIZANDO BRANCHES POR ETAPA DE DESENVOLVIMENTO COM


UM REPOSITÓRIO CENTRAL
E-book gerado especialmente para Hugo Hiroshi - [email protected]
"FRVJQFQSFDJTBEFVNCPNEPNÓOJPEP(JU

²VNGMVYPDPNQMFYP1PSJTTP ÏNFMIPSVUJMJ[BSFTTF
GMVYPFNQSPKFUPTHSBOEFTFPVRVBOEPPQSPKFUPFTUÈ
BUPEPWBQPS"Ó BPSHBOJ[BÎÍPEPUSBCBMIPDPNQFOTB
BDPNQMFYJEBEF

5PEPT PT NFNCSPT EB OPTTB FRVJQF QSFDJTBN EF


QFSNJTTÍP EF QVTI OP SFQPTJUØSJP DFOUSBM
JOWJBCJMJ[BOEP P VTP FN QSPKFUPT PQFO TPVSDF F FN
FRVJQFTHSBOEFT

.FTNPDPNBCSBODI desenv RVFTFSWFDPNPVNB


CSBODIEFJOUFHSBÎÍP TØJOUFHSBSFNPTFGFUJWBNFOUFP
DØEJHP OPT NPNFOUPT FN RVF GJ[FSNPT P NFSHF EBT
CSBODIFT EBT GVODJPOBMJEBEFT OB desenv  1PS JTTP
FTQFDJBMJTUBTFNJOUFHSBÎÍPDPOUÓOVBBJOEBDSJUJDBNP
VTP EFTTF GMVYP  BSHVNFOUBOEP RVF FTTB JOUFHSBÎÍP
BJOEB Ï GFJUB UBSEF EFNBJT 4F FTTF GMVYP GPS VUJMJ[BEP
TFN CSBODIFT QPS GVODJPOBMJEBEF  B TJUVBÎÍP Ï
NFMIPSBEB  NBT QFSEFSÓBNPT BT WBOUBHFOT EF
JTPMBSNPT P DØEJHP EBT GVODJPOBMJEBEFT FN
EFTFOWPMWJNFOUP

 $0-"#03"/%0 $0. 130+&504 01&/


4063$&$0.'03,&16--3&26&45
6UJMJ[BS VN SFQPTJUØSJP DFOUSBM Ï BMHP CBTUBOUF DPNVN QBSB
QSPKFUPT JOUFSOPT EF FNQSFTBT +È QBSB QSPKFUPT PQFO TPVSDF
QSFDJTBNPT EF VNB NBOFJSB NBJT GMFYÓWFM  RVF OÍP OFDFTTJUF EF
QFSNJTTÜFT EF QVTI QBSB BT EF[FOBT PV DFOUFOBT EF DPMBCPSFT EP

10.4 COLABORANDO COM PROJETOS OPEN SOURCE COM FORK E PULL


REQUEST 191
E-book gerado especialmente para Hugo Hiroshi - [email protected]
OPTTPQSPKFUP

4FSWJÎPT DPNP P (JU)VC QFSNJUFN RVF VN DPMBCPSBEPS GBÎB


GPSLT EF VN QSPKFUP  DSJBOEP VNB DØQJB QÞCMJDB EP SFQPTJUØSJP
&TTB DØQJB GJDB QVCMJDBEB OB XFC  TFSWJOEP DPNP P SFQPTJUØSJP
SFNPUP EP DPMBCPSBEPS "TTJN  PT DPMBCPSBEPSFT QPEFN DPNJUBS
NVEBOÎBTFNTVBTDØQJBTEPQSPKFUP TFNQSFDJTBSEFQFSNJTTÜFT
EFQVTIQBSBPQSPKFUPPSJHJOBM

0DPMBCPSBEPSQPEFDSJBSVNSFQPTJUØSJPMPDBMRVFBQPOUBQBSB
P TFV SFQPTJUØSJP SFNPUP %FQPJT EF DPNJUBS BMHVNBT
NPEJGJDBÎÜFT  QPEF TFS GFJUP P QVTI QBSB TVB DØQJB EP QSPKFUP 4F
EFTFKBS QPEFBUÏMJCFSBSBDFTTPEFQVTIBPTFVSFQPTJUØSJPSFNPUP
QBSBPVUSBTQFTTPBTDPMBCPSBSFNOBTVBDØQJB

2VBOEP P DPMBCPSBEPS FTUJWFS TBUJTGFJUP DPN TFV DØEJHP  Ï


QPTTÓWFM FOWJBS VN QVMM SFRVFTU QBSB P QSPKFUP QSJODJQBM 0
NBOUFOFEPS EP QSPKFUP  B QFTTPB SFTQPOTÈWFM QFMP SFQPTJUØSJP
PSJHJOBM  QPEF SFWJTBS B DØQJB QÞCMJDB EP DPMBCPSBEPS F TVHFSJS
NFMIPSJBT OP DØEJHP 2VBOEP P NBOUFOFEPS FTUJWFS TBUJTGFJUP  Ï
QPTTÓWFM BDFJUBS P QVMM SFRVFTU  BQMJDBOEP BT NVEBOÎBT OP
SFQPTJUØSJPPSJHJOBM

² JOUFSFTTBOUF RVF P DPMBCPSBEPS GBÎB TFVT DPNNJUT FN VNB


CSBODI EF GVODJPOBMJEBEF  TFQBSBEB EB master  %FTTB NBOFJSB
OBIPSBEFBQMJDBSPQVMMSFRVFTU PNBOUFOFEPSEPQSPKFUPPSJHJOBM
UFSJB PT DPNNJUT EP DPMBCPSBEPS FN VNB CSBODI TFQBSBEB
QPEFOEPDPNJUBSNFMIPSJBT5BNCÏNÏQPTTÓWFMVUJMJ[BSCSBODIFT
QPSFUBQBEFEFTFOWPMWJNFOUPQBSBQSPKFUPTPQFOTPVSDFNBJPSFT

192 10.4 COLABORANDO COM PROJETOS OPEN SOURCE COM FORK E PULL
REQUEST
E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB'PSLF1VMM3FRVFTU

2VBOEPVUJMJ[BS
6TFFNQSPKFUPTPQFOTPVSDFEFQFRVFOPPVNÏEJPQPSUF1BSB
QSPKFUP PQFO TPVSDF NVJUP HSBOEFT  DPN NJMIBSFT EF
DPMBCPSBEPSFT  P OÞNFSP EF QVMM SFRVFTUT TFSJB UÍP HSBOEF RVF
UPSOBSJBJOWJÈWFMPVTPEFTTFGMVYP

5BNCÏN Ï QPTTÓWFM VUJMJ[BS FTTF NPEFMP FN QSPKFUPT EF


FNQSFTBT OPDBTPEFQSPKFUPTRVFUFOIBNDPMBCPSBEPSFTFYUFSOPT
FPVOÍPDPOGJÈWFJT

7BOUBHFOT
/ÍPÏOFDFTTÈSJPEBSQFSNJTTÜFTEFQVTIQBSBUPEPTPT
DPMBCPSBEPSFTEPQSPKFUP

² VN CPN NPEFMP QBSB QSPKFUPT PQFO TPVSDF EF


QFRVFOPPVNÏEJPQPSUF

%FTWBOUBHFOT

10.4 COLABORANDO COM PROJETOS OPEN SOURCE COM FORK E PULL


REQUEST 193
E-book gerado especialmente para Hugo Hiroshi - [email protected]
" JOUFHSBÎÍP EBT NVEBOÎBT EPT GPSLT Ï GFJUB EF
NBOFJSB CFN UBSEJB 1PTTÓWFJT DPOGMJUPT FPV FSSPT
TFSJBN EFTDPCFSUPT BQFOBT OB IPSB EF BQMJDBSNPT P
QVMMSFRVFTU

$PNP TØ IÈ VN SFQPTJUØSJP PSJHJOBM DPN


QSPWBWFMNFOUF BQFOBTVNNBOUFOFEPS POÞNFSPEF
QVMM SFRVFTUT QPEFSJB JS BDVNVMBOEP 1BSB QSPKFUPT
PQFO TPVSDF NVJUP HSBOEFT  Ï OFDFTTÈSJB VNB PVUSB
BCPSEBHFN

 03("/*;"/%0 130+&504 01&/


4063$& (*("/5&4$04 $0. %*5"%03 &
5&/&/5&4
1BSB QSPKFUPT PQFO TPVSDF DPNP P LFSOFM EP -JOVY  RVF UFN
NJMIÜFTEFMJOIBTEFDØEJHPFNJMIBSFTEFDPMBCPSBEPSFT VUJMJ[BSP
GMVYP EF USBCBMIP BOUFSJPS UPSOBTF JOWJÈWFM 0 OÞNFSP EF QVMM
SFRVFTUTDSJBEPTTFSJBFOPSNF$PNBQFOBTVNNBOUFOFEPS TFSJB
JNQPTTÓWFMEBSWB[ÍPËTDPMBCPSBÎÜFT

1BSB FTTF UJQP EF QSPKFUP  P NBOUFOFEPS EP QSPKFUP PSJHJOBM


QPEFGJDBSDPNPVNEJUBEPSCFOFWPMFOUF RVFUFNBÞMUJNBQBMBWSB
TPCSFPDØEJHPEPQSPKFUP NBTRVFBDFJUBTTVHFTUÜFT/PDBTPEP
-JOVY PEJUBEPSÏ-JOVT5PSWBMET

0 EJUBEPS FMFHFSJB DPMBCPSBEPSFT RVF TF NPTUSBSBN


DPNQFUFOUFT OP QBTTBEP QBSB NBOUFS SFQPTJUØSJPT QÞCMJDPT DPN
DØQJBT EP QSPKFUP &TTBT DØQJBT  FN HFSBM  UFSJBN VN GPDP FN
BMHVN NØEVMP FTQFDÓGJDP EP QSPKFUP 0T FMFJUPT QFMP EJUBEPS
TFSWJSJBNDPNPUFOFOUFT SFDFCFOEPQVMMSFRVFTUTEPTNJMIBSFTEF

194 10.5 ORGANIZANDO PROJETOS OPEN SOURCE GIGANTESCOS COM


DITADOR E TENENTES
E-book gerado especialmente para Hugo Hiroshi - [email protected]
PVUSPT DPMBCPSBEPSFT F SFWJTBOEP P DØEJHP  GJMUSBOEP BQFOBT BT
DPMBCPSBÎÜFTSFBMNFOUFCPBT

6N OPWP DPMBCPSBEPS UFSJB EF FTDPMIFS VN EPT SFQPTJUØSJPT


EPT UFOFOUFT QBSB GB[FS TFV GPSL EP QSPKFUP  QSPWBWFMNFOUF
DPOTJEFSBOEP P NØEVMP FN RVF RVFS DPMBCPSBS %FQPJT EF GFJUPT
TFVT DPNNJUT  GBSJB P QVTI QBSB TFV SFQPTJUØSJP &OUÍP  QPEFSJB
GB[FS VN QVMM SFRVFTU QBSB TFV UFOFOUF  RVF GBSJB VNB SFWJTÍP F
EBSJBVNGFFECBDL

2VBOEP BQSPQSJBEP  P UFOFOUF GBSJB QVMM SFRVFTUT QBSB P


SFQPTJUØSJP EP EJUBEPS  TJOBMJ[BOEP VN QBDPUF JOUFSFTTBOUF EF
NVEBOÎBT

/BWFSEBEF PLFSOFMEP-JOVYOÍPVUJMJ[BQVMMSFRVFTUTFOFN
P (JU)VC /P (JU)VC  IÈ VNB DØQJB TØ QBSB MFJUVSB EP
SFQPTJUØSJP PSJHJOBM 0T DPNNJUT TÍP FOWJBEPT EPT
DPMBCPSBEPSFTQBSBPTUFOFOUFT FEPTUFOFOUFTQBSBPEJUBEPS
-JOVTQPSFNBJM

² VTBEP P DPNBOEP git format-patch  QBSB DSJBS VN


BSRVJWP .patch DPNVNDPOKVOUPEFDPNNJUT0TQBUDIFT
TÍP FOWJBEPT QPS FNBJM DPN P DPNBOEP git send-mail 
&OUÍP EFWFTFSVUJMJ[BEPPDPNBOEP git am QBSBBQMJDBSPT
DPNNJUTSFDFCJEPTQPSFNBJM

²JOUFSFTTBOUFVUJMJ[BSCSBODIFTQPSGVODJPOBMJEBEFFQPSFUBQB
EFEFTFOWPMWJNFOUPBPVUJMJ[BSFTTFGMVYPEFUSBCBMIP

10.5 ORGANIZANDO PROJETOS OPEN SOURCE GIGANTESCOS COM DITADOR E


TENENTES 195
E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB%JUBEPSF5FOFOUFT

2VBOEPVUJMJ[BS
6UJMJ[F QBSB QSPKFUPT PQFO TPVSDF HSBOEFT  DPN NJMIBSFT EF
DPMBCPSBEPSFT

7BOUBHFOT
"TTJN DPNP OP GMVYP BOUFSJPS  OÍP TÍP OFDFTTÈSJBT
QFSNJTTÜFT EF QVTI QBSB P SFQPTJUØSJP PSJHJOBM  EP
EJUBEPS OFNEPTUFOFOUFT

² VN GMVYP RVF GVODJPOB CFN FN QSPKFUPT PQFO


TPVSDFEFHSBOEFQPSUF

%FTWBOUBHFOT
² VN GMVYP EF USBCBMIP FYUSFNBNFOUF DPNQMJDBEP

196 10.5 ORGANIZANDO PROJETOS OPEN SOURCE GIGANTESCOS COM


DITADOR E TENENTES
E-book gerado especialmente para Hugo Hiroshi - [email protected]
RVFSFRVFSNVJUBGBNJMJBSJEBEFDPNP(JU

"JOUFHSBÎÍPÏGFJUBEFNBOFJSBUBSEJB TØRVBOEPGPS
BQMJDBEPPQVMMSFRVFTU PVPTQBUDIFTSFDFCJEPTQPSF
NBJM


10.5 ORGANIZANDO PROJETOS OPEN SOURCE GIGANTESCOS COM DITADOR E


TENENTES 197
E-book gerado especialmente para Hugo Hiroshi - [email protected]
CAPÍTULO 11

"1³/%*$&─(*5)6#/0
8*/%084

$POGPSNFWJTUPOPTDBQÓUVMPTBOUFSJPSFT OFTUFMJWSPVUJMJ[BNPT
P (JU WJB MJOIB EF DPNBOEP  QFMP 5FSNJOBM  OP DBTP EP -JOVY F
.BD PVQFMP(JU#BTI OPDBTPEP8JOEPXT

&NCPSBTFKBQPTTÓWFMGB[FSUVEPWJBMJOIBEFDPNBOEP NVJUPT
VTVÈSJPTEP(JU QSJODJQBMNFOUFPTRVFVUJMJ[BNP8JOEPXTFOÍP
UÐNPIÈCJUPEFBDFTTBSPQSPNQUEFDPNBOEPT OÍPHPTUBNEFTTB
BCPSEBHFN  QSFGFSJOEP VUJMJ[ÈMP DPN P BVYÓMJP EF BMHVNB
BQMJDBÎÍPWJTVBM

&YJTUFN BMHVNBT BQMJDBÎÜFT WJTVBJT QBSB P (JU OP 8JOEPXT


EFOUSF FMBT P (JU)VC GPS 8JOEPXT  DSJBEB QFMP QFTTPBM EP
(JU)VC/FTUFDBQÓUVMP WFSFNPTDPNPJOTUBMBSFVUJMJ[BSP(JU)VC
GPS8JOEPXT

 */45"-"/%0 0 (*5)6# '03


8*/%084
1SJNFJSBNFOUF  EFWFNPT CBJYBS B BQMJDBÎÍP  P RVF GB[FNPT
BDFTTBOEP P TJUF IUUQXJOEPXTHJUIVCDPN  F DMJDBOEP OP CPUÍP
%PXOMPBE(JU)VCGPS8JOEPXT

198 11 APÊNDICE ─ GITHUB NO WINDOWS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB1ÈHJOBEP(JU)VCGPS8JOEPXTDPNPCPUÍPQBSBEPXOMPBE

7&34¿&4461035"%"4

0(JU)VCGPS8JOEPXTGVODJPOBBQFOBTOP8JOEPXT7JTUB
8JOEPXTF8JOEPXT

"QØT P EPXOMPBE EP BSRVJWP  EFWFNPT FYFDVUÈMP EBOEP VN


duplo clique FTFSÈFYJCJEBBUFMBEFJOTUBMBÎÍP

11.1 INSTALANDO O GITHUB FOR WINDOWS 199


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB5FMBEFJOTUBMBÎÍP

"QØT B JOTUBMBÎÍP TFS DPODMVÓEB  WFSFNPT VNB UFMB POEF


EFWFNPTJOGPSNBSOPTTPVTVÈSJPFTFOIBDBEBTUSBEPTOP(JU)VC F
DMJDBSOPCPUÍP-PHJO

200 11.1 INSTALANDO O GITHUB FOR WINDOWS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB5FMBPOEFJOGPSNBNPTPTEBEPTEFMPHJOEP(JU)VC

/B QSØYJNB UFMB  EFWFNPT JOGPSNBS P OPNF F P FNBJM EP


OPTTP VTVÈSJP (JU  F DMJDBS OP CPUÍP continue  &TTF QBTTP Ï
FRVJWBMFOUF B FYFDVUBS PT DPNBOEPT git config --global
user.name F git config --global user.email 

11.1 INSTALANDO O GITHUB FOR WINDOWS 201


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB5FMBEFDPOGJHVSBÎÍPEPTEBEPTEPVTVÈSJP(JU

1PSGJN WFSFNPTBUFMBPOEFTFSÍPMJTUBEPTPTSFQPTJUØSJPT(JU
FODPOUSBEPTFNOPTTPDPNQVUBEPS TFIPVWFS PVVNBNFOTBHFN
JOGPSNBOEP RVF OÍP GPSBN FODPOUSBEPT SFQPTJUØSJPT /P OPTTP
DBTP  DMJDBSFNPT OP CPUÍP Skip  QPJT WBNPT BEJDJPOBS PT
SFQPTJUØSJPTQPTUFSJPSNFOUF

202 11.1 INSTALANDO O GITHUB FOR WINDOWS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB5FMBMJTUBOEPPTSFQPTJUØSJPT(JU

4FSFNPT EJSFDJPOBEPT QBSB B UFMB QSJODJQBM EB BQMJDBÎÍP


DPOIFDJEBDPNP%BTICPBSE

11.1 INSTALANDO O GITHUB FOR WINDOWS 203


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB5FMBEFEBTICPBSE

/FTUFQPOUP KÈUFNPTBBQMJDBÎÍPJOTUBMBEBF TFWFSJGJDBSNPTB


Área de Trabalho WFSFNPTRVFGPSBNBEJDJPOBEPTEPJTOPWPT
BUBMIPTVNDIBNBEP(JU)VC  RVF TFSWF QBSB FYFDVUBS P (JU)VC
GPS8JOEPXT FPVUSPDIBNBEP(JU4IFMM  QBSB FYFDVUBS P (JU WJB
QSPNQUEFDPNBOEP

204 11.1 INSTALANDO O GITHUB FOR WINDOWS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB«SFBEFUSBCBMIPDPNPTOPWPTBUBMIPT

0 (JU)VC GPS 8JOEPXT UBNCÏN DSJBSÈ VN OPWP EJSFUØSJP


DIBNBEP (JU)VC  MPDBMJ[BEP OB QBTUB Documentos  EP VTVÈSJP
&TTFÏPEJSFUØSJPQBESÍPPOEFPTOPWPTSFQPTJUØSJPTTFSÍPDSJBEPT

$3*"/%06./0703&104*5»3*0
"HPSB RVF KÈ UFNPT P (JU)VC GPS 8JOEPXT JOTUBMBEP F
DPOGJHVSBEP  QPEFNPT DSJBS VN OPWP SFQPTJUØSJP (JU 1BSB JTUP
CBTUBDMJDBSOPCPUÍP + MPDBMJ[BEPOBUFMBQSJODJQBMEBBQMJDBÎÍP

11.2 CRIANDO UM NOVO REPOSITÓRIO 205


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB5FMBEFDSJBÎÍPEFOPWPSFQPTJUØSJP

%FWFNPTQSFFODIFSPOPNFEPSFQPTJUØSJPOPDBNQP Name F
OPDBNQP Local path FTDPMIFSPEJSFUØSJPPOEFFMFEFWFSÈTFS
DSJBEP PVEFJYBSQSFFODIJEPDPNPEJSFUØSJPQBESÍP

/PUF RVF IÈ UBNCÏN VN DBNQP DIBNBEP (JU JHOPSF  POEF
QPEFNPT FTDPMIFS B MJOHVBHFN EF QSPHSBNBÎÍP VUJMJ[BEB OP
QSPKFUP  EFOUSF BT PQÎÜFT EJTQPOÓWFJT $PN JTUP  P BSRVJWP
.gitignore TFSÈDSJBEPBVUPNBUJDBNFOUF

"QØT QSFFODIFS PT DBNQPT  EFWFNPT DMJDBS OP CPUÍP Create


repository  BHVBSEBS B DSJBÎÍP EP SFQPTJUØSJP F WFSFNPT B UFMB
%BTICPBSEMJTUBOEPPOPWPSFQPTJUØSJP

206 11.2 CRIANDO UM NOVO REPOSITÓRIO


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB5FMBEBTICPBSEDPNPOPWPSFQPTJUØSJP

3FQBSF RVF B UFMB BHPSB FTUÈ EJWJEJEB FN USÐT DPMVOBT OB


QSJNFJSB TÍP MJTUBEPT PT SFQPTJUØSJPT (JU  OB TFHVOEB PT DPNNJUT
EP SFQPTJUØSJP KVOUBNFOUF DPN VN GPSNVMÈSJP QBSB FGFUVBS VN
OPWPDPNNJUF OBÞMUJNB TÍPFYJCJEPTPTBSRVJWPTEPSFQPTJUØSJP

 &'&56"/%0 $0..*54 /0


3&104*5»3*0
7BNPT BHPSB DSJBS VN OPWP BSRVJWP OP SFQPTJUØSJP F  FN
TFHVJEB  FGFUVBS VN DPNNJU 1BSB JTTP  BDFTTF P EJSFUØSJP EP
SFQPTJUØSJPFDSJFVNOPWPBSRVJWPDIBNBEP teste.html DPNP
TFHVJOUFDPOUFÞEP
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>GitHub for Windows</title>
</head>

11.3 EFETUANDO COMMITS NO REPOSITÓRIO 207


E-book gerado especialmente para Hugo Hiroshi - [email protected]
<body>
<h1>Bem vindo!</h1>
</body>
</html>

"HPSBBPWPMUBS QBSBP (JU)VCGPS8JOEPXT WFSFNPTP OPWP


BSRVJWPTFOEPMJTUBEP

'JHVSB5FMBEBTICPBSEMJTUBOEPPOPWPBSRVJWP

1BSBFGFUVBSPDPNNJUEPBSRVJWP CBTUBEJHJUBSBNFOTBHFNEP
DPNNJU OP DBNQP 4VNNBSZ  QSFFODIFS PQDJPOBMNFOUF VNB
EFTDSJÎÍP NBJT EFUBMIBEB EP DPNNJU OP DBNQP %FTDSJQUJPO  F
FGFUVBSPDPNNJUDMJDBOEPOPCPUÍP commit to master 

208 11.3 EFETUANDO COMMITS NO REPOSITÓRIO


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB&GFUVBOEPPQSJNFJSPDPNNJU

3FQBSFRVFOBMJTUBHFNEPTBSRVJWPTÏQPTTÓWFMTFMFDJPOBSRVBJT
TFSÍPDPNJUBEPT

%&5"-)"/%004$0..*54
7BNPT FGFUVBS VN OPWP DPNNJU OP SFQPTJUØSJP 1BSB JTTP
BMUFSFPBSRVJWP teste.html BEJDJPOBOEPPTFHVJOUFDPOUFÞEP
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>GitHub for Windows</title>
</head>
<body>
<h1>Bem vindo!</h1>
<p>Alteracao qualquer</p>
</body>
</html>

"QØTJTTP SFHJTUSFBBMUFSBÎÍPDPNVNOPWPDPNNJU

11.4 DETALHANDO OS COMMITS 209


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB3FHJTUSBOEPPOPWPDPNNJU

"QØTFGFUVBSPDPNNJU SFQBSFRVFFMFBQBSFDFOBMJTUBHFNEF
DPNNJUT POEFÏFYJCJEBBNFOTBHFN PBVUPSFBEBUBFNRVFDBEB
DPNNJUGPJSFBMJ[BEP

"P DMJDBS FN BMHVN EPT DPNNJUT  WFSFNPT BT BMUFSBÎÜFT


SFBMJ[BEBTOBRVFMFDPNNJUFNFTQFDÓGJDP

'JHVSB%FUBMIBNFOUPEBTNPEJGJDBÎÜFTSFBMJ[BEBTOPDPNNJU

² QPTTÓWFM SFWFSUFS BMHVN EPT DPNNJUT GBDJMNFOUF  CBTUBOEP

210 11.4 DETALHANDO OS COMMITS


E-book gerado especialmente para Hugo Hiroshi - [email protected]
QBSB JTTP  DMJDBS OP DPNNJU F  OB UFMB EF EFUBMIBNFOUP  DMJDBS OP
CPUÍP revert 

'JHVSB#PUÍPQBSBSFWFSUFSPDPNNJU

"QØTDMJDBSOPCPUÍP revert VNOPWPDPNNJUTFSÈFGFUVBEP


BVUPNBUJDBNFOUF  EFTGB[FOEP BT BMUFSBÎÜFT EP DPNNJU
TFMFDJPOBEP

'JHVSB5FMBEFUBMIBOEPPDPNNJUEFSFWFSU

11.4 DETALHANDO OS COMMITS 211


E-book gerado especialmente para Hugo Hiroshi - [email protected]
 &/7*"/%0 0 3&104*5»3*0 1"3" 0
(*5)6#
0(JU)VCGPS8JOEPXTQPTTVJJOUFHSBÎÍPDPNP(JU)VC FOPT
QFSNJUFP FOWJP EP OPTTP SFQPTJUØSJP MPDBM QBSB MÈ 1BSB FOWJBS P
SFQPTJUØSJP QBSB P (JU)VC  CBTUB DMJDBS OP CPUÍP Publish
Repository 

'JHVSB#PUÍPQBSBFOWJBSPSFQPTJUØSJPQBSBP(JU)VC

"P DMJDBS OP CPUÍP  TFSÈ FYJCJEB VNB UFMB POEF QPEFNPT
QSFFODIFSVNBEFTDSJÎÍPEFUBMIBEBEPSFQPTJUØSJP FFTDPMIFSTFFMF
EFWFSÈ TFS QSJWBEP  DBTP OPTTP VTVÈSJP UFOIB DBEBTUSP FN BMHVN
EPTQMBOPTQBHPTEP(JU)VC

"QØTQSFFODIFSBTJOGPSNBÎÜFT CBTUBDMJDBSOPCPUÍP1VCMJTI
NPWFJTXJOEPXTFOPTTPSFQPTJUØSJPTFSÈFOWJBEPQBSBP(JU)VC

212 11.5 ENVIANDO O REPOSITÓRIO PARA O GITHUB


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB5FMBDPNEFUBMIFTEPSFQPTJUØSJPBTFSFOWJBEPQBSBP(JU)VC

4FBDFTTBSNPTBQÈHJOBEPOPTTPVTVÈSJPOP(JU)VC WFSFNPT
RVFPSFQPTJUØSJPGPJFOWJBEPDPSSFUBNFOUF

'JHVSB5FMBEPOPWPSFQPTJUØSJPOP(JU)VC

"HPSB  TFNQSF RVF QSFDJTBSNPT TJODSPOJ[BS OPTTBT BMUFSBÎÜFT

11.5 ENVIANDO O REPOSITÓRIO PARA O GITHUB 213


E-book gerado especialmente para Hugo Hiroshi - [email protected]
MPDBJT DPN P SFQPTJUØSJP SFNPUP OP (JU)VC  CBTUB DMJDBSNPT OP
CPUÍP Sync 

'JHVSB#PUÍPQBSBTJODSPOJ[BSPSFQPTJUØSJPMPDBMDPNP(JU)VC

53"#"-)"/%0$0.#3"/$)&4
5BNCÏNÏQPTTÓWFM USBCBMIBSDPN branches  OP (JU)VC GPS
8JOEPXT /B UFMB QSJODJQBM  FYJTUF VN CPUÍP POEF QPEFNPT
HFSFODJBSBTCSBODIFTEPSFQPTJUØSJP

'JHVSB#PUÍPQBSBHFSFODJBSBTCSBODIFT

7BNPT DSJBS VNB OPWB CSBODI DIBNBEB UFTUFT  DMJDBOEP OP


CPUÍPDJUBEPBOUFSJPSNFOUF EJHJUBOEPPOPNF testes OPDBNQP

214 11.6 TRABALHANDO COM BRANCHES


E-book gerado especialmente para Hugo Hiroshi - [email protected]
EFUFYUPEBUFMB FDPOGJSNBSDMJDBOEPOPCPUÍP Create testes 

'JHVSB5FMBEFDSJBÎÍPEBOPWBCSBODI

"QØT B OPWB CSBODI TFS DSJBEB  FMB KÈ Ï TFMFDJPOBEB 4F


DMJDBSNPT OPWBNFOUF OP CPUÍP QBSB HFSFODJBS BT CSBODIFT
WFSFNPTRVFBHPSBUFNPTEVBTCSBODIFTOPSFQPTJUØSJP

'JHVSB5FMBMJTUBOEPBTCSBODIFTEPSFQPTJUØSJP

11.6 TRABALHANDO COM BRANCHES 215


E-book gerado especialmente para Hugo Hiroshi - [email protected]
7BNPT BMUFSBS OPWBNFOUF P BSRVJWP teste.html  F  FN
TFHVJEB  FGFUVBS VN OPWP DPNNJU 1PSÏN  EFTUB WF[  P DPNNJU
EFWFSÈTFSSFBMJ[BEPOBCSBODIUFTUFT

"MUFSF P BSRVJWP teste.html  BEJDJPOBOEP P TFHVJOUF


DPOUFÞEP
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>GitHub for Windows</title>
</head>
<body>
<h1>Bem vindo!</h1>
<p>TESTE!</p>

<h2>Trabalhando com branches</h2>


</body>
</html>

3FHJTUSF B BMUFSBÎÍP DPN VN OPWP DPNNJU  DFSUJGJDBOEPTF


BOUFTEFRVFBCSBODIUFTUFTFTUÈTFMFDJPOBEB

'JHVSB5FMBQBSBFGFUVBSPOPWPDPNNJU

3FQBSFRVF BQØTFGFUVBSPDPNNJU FMFÏFYJCJEPOBMJTUBHFNEF


DPNNJUTEBCSBODI testes 

216 11.6 TRABALHANDO COM BRANCHES


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB5FMBMJTUBOEPPTDPNNJUTEBCSBODIUFTUFT

.BT BP NVEBSNPT QBSB B CSBODI master  P DPNNJU TFSÈ


FTDPOEJEP  VNB WF[ RVF FMF GPJ FGFUVBEP BQFOBT OB CSBODI
testes 

'JHVSB5FMBMJTUBOEPPTDPNNJUTEBCSBODINBTUFS

&GFUVBOEPPNFSHFEPTDPNNJUT
/P (JU)VC GPS 8JOEPXT  UBNCÏN Ï QPTTÓWFM FGFUVBS NFSHFT

11.6 TRABALHANDO COM BRANCHES 217


E-book gerado especialmente para Hugo Hiroshi - [email protected]
QBSBNFTDMBSBTBMUFSBÎÜFTEFEVBTCSBODIFTEJTUJOUBT

7BNPT FGFUVBS P NFSHF EB CSBODI testes  OB CSBODI


master  1BSB JTTP  EFWFNPT DMJDBS OP CPUÍP EF HFSFODJBS BT
CSBODIFTF OBUFMBRVFTFSÈBCFSUB DMJDBSOPCPUÍP Manage 

'JHVSB5FMBDPNCPUÍP.BOBHF

"P DMJDBS OFTUF CPUÍP  WFSFNPT B UFMB EF HFSFODJBNFOUP EBT


CSBODIFT EP SFQPTJUØSJP  OB RVBM TFSÍP MJTUBEBT UPEBT BT CSBODIFT
FYJTUFOUFT FOBQBSUFJOGFSJPSFYJTUFNEPJTDBNQPTVUJMJ[BEPTQBSB
GB[FSPNFSHF

218 11.6 TRABALHANDO COM BRANCHES


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB5FMBEFHFSFODJBNFOUPEFCSBODIFT

1BSB SFBMJ[BS P NFSHF  EFWFNPT BSSBTUBS F TPMUBS BT CSBODIFT


EFTFKBEBTOPTDBNQPTDJUBEPTBOUFSJPSNFOUF TFOEPRVFOPOPTTP
DBTPBCSBODI testes EFWFTFSBSSBTUBEBQBSBPQSJNFJSPDBNQP
FB master QBSBPTFHVOEPDBNQP QPJTRVFSFNPTGB[FSPNFSHF
EBCSBODI testes OBCSBODI master 

11.6 TRABALHANDO COM BRANCHES 219


E-book gerado especialmente para Hugo Hiroshi - [email protected]
'JHVSB$BNQPTQBSBTFMFÎÍPEBTCSBODIFT

"QØT BSSBTUBS BT CSBODIFT QBSB PT DBNQPT  EFWFNPT DMJDBS OP


CPUÍP Merge  QBSB DPOGJSNBS B PQFSBÎÍP  F VNB NFOTBHFN TFSÈ
FYJCJEBBPGJOBMEPQSPDFTTP

"HPSB  TF WPMUBSNPT QBSB B UFMB QSJODJQBM F NVEBSNPT QBSB B


CSBODI master  WFSFNPT RVF P DPNNJU FGFUVBEP OB CSBODI
teste TFSÈFYJCJEPOBMJTUBHFN DPOGJSNBOEPBTTJNRVFPNFSHF
GPJFGFUVBEPDPNTVDFTTP

220 11.6 TRABALHANDO COM BRANCHES


E-book gerado especialmente para Hugo Hiroshi - [email protected]

You might also like