git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · repositório local com ramos • git...
TRANSCRIPT
![Page 2: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/2.jpg)
Oqueéversionado?
Leonardo Murta Git 2
Diretório Arquivo
ElementoFS
ArquivoBinário ArquivoTexto Linha
![Page 3: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/3.jpg)
Comoéversionado?
Leonardo Murta Git 3
CommitA CommitB
CommitC
CommitE
CommitD
CommitF
CommitAutor
CommiHerMensagem
Data
ElementoFS*
0..2 pais
![Page 4: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/4.jpg)
Formasdeadoção• Apesardeserpeer-to-peer,normalmenteédefinidoum“workflow”paraadoçãodeDVCSemfunçãodecaracterísXcasdoprojeto– Individual– Cliente-servidor– Gerentedeintegração– Ditador/tenentes
Leonardo Murta Git 4
![Page 5: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/5.jpg)
Individual
Leonardo Murta Git 5
![Page 6: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/6.jpg)
Cliente-servidor
Leonardo Murta Git 6
![Page 7: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/7.jpg)
Gerentedeintegração
Leonardo Murta Git 7
![Page 8: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/8.jpg)
Ditador/tenentes
Leonardo Murta Git 8
![Page 9: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/9.jpg)
Passoapasso• VamosuXlizaroGitgradualmenteemdiferentessituações– Conceitosbásicos– Repositóriolocal– Inspecionandomudanças– Demarcandoversõesespeciais– Repositóriolocalcomramos– Repositórioremoto– MúlXplosrepositóriosremotos
Leonardo Murta Git 9
![Page 10: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/10.jpg)
Conceitosbásicos:help!• githelp
– Ofereceajudageralsobreogit• githelp<comando>
– Ofereceajudasobreumcomandoespecíficodogit
• Demaiscomandosdãodicasdoquepodeserfeito(leiacomatençãoassaídasdoscomandos!)
Leonardo Murta Git 10
![Page 11: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/11.jpg)
Conceitosbásicos:quemsoueu?• gitconfig--globaluser.name<seunome>
– Configuraonomedousuário
• gitconfig--globaluser.email<seuemail>– Configuraoemaildousuário
Leonardo Murta Git 11
![Page 12: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/12.jpg)
Conceitosbásicos:stagingarea• Áreaondesãocolocadososarquivosquepretendemosenviarparaorepositório
Leonardo Murta Git 12
ÁreadeTrabalho
StagingArea
RepositórioLocal
![Page 13: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/13.jpg)
Conceitosbásicos:commitid• CadasistemadecontroledeversãousaumaestratégiadiferenteparaidenXficarcommits– Númerosequencialporarquivo(CVS)– Númerosequencialporrepositório(Subversion)– Hash(GiteMercurial)
Leonardo Murta Git 13
![Page 14: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/14.jpg)
Conceitosbásicos:apelidos• Aversãobasedoseuespaçodetrabalho
– HEAD• Oramoprincipaldoseurepositório
– master
• Orepositóriodoqualseurepositóriofoiclonado– origin
Leonardo Murta Git 14
![Page 15: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/15.jpg)
Repositóriolocal• gitinit<nome>
– CriaumrepositórioGitnodiretório
• gitadd– Adicionaumarquivonastagingareaparaserenviadoaorepositórionopróximocommit
• gitcommit–m<mensagem>– Enviaosarquivosqueestãonastagingareaparaorepositório
Leonardo Murta Git 15
![Page 16: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/16.jpg)
Inspecionandomudanças• gitstatus
– Inspecionaoespaçodetrabalho• gitlog[--graph][--decorate=short][--name-status]
– Inspecionaohistóricodorepositóriolocal• gitshow
– Inspecionaumcommit• gitdiff
– Comparaoespaçodetrabalhocomastagingareaoucomalgumaversãodorepositório
Leonardo Murta Git 16
![Page 17: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/17.jpg)
Interfacegráfica• Épossívelfazertodosessespassosdeformavisual
• Dentreváriasferramentas,vamospraXcarcom...
Leonardo Murta Git 17
![Page 18: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/18.jpg)
Demarcandoversõesespeciais• gittag
– Listaosrótulosexistentes• gittag<nomedorótulo>[commitid]
– Criaumrótulosobreumdadocommit(HEADpordefault)
• gittag–d<nomedorótulo>– Removeumrótulo
Leonardo Murta Git 18
![Page 19: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/19.jpg)
Repositóriolocalcomramos• gitbranch--all-v
– Listaosramosexistentesnorepositório• gitbranch<nomedoramo>
– CriaumramoàparXrdaversãoindicadanoHEAD• gitbranch–d<nomedoramo>
– Removeumramo• gitcheckout<commitidounomedoramo>
– Trocaaversãobasedoespaçodetrabalho• gitmerge<nomedoramo>
– CombinaumramocomoramocorrenteLeonardo Murta Git 19
![Page 20: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/20.jpg)
Repositórioremoto• gitclone<url><diretório>
– Criaumrepositóriolocalcopiandoohistóricodeumrepositórioremoto
• gitpull– Atualizaorepositóriolocaleoespaçodetrabalhoemrelaçãoaumrepositórioremoto
• gitpush– Atualizaorepositórioremotoemrelaçãoaorepositóriolocal
Leonardo Murta Git 20
![Page 21: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/21.jpg)
MúlXplosrepositóriosremotos• gitremote-v
– Listarosrepositóriosremotoscadastrados
• gitremoteadd<nome><url>– Adicionaumnovorepositórioremoto
• gitremoteremove<nome>– Removeumrepositórioremotoexistente
Leonardo Murta Git 21
![Page 22: Git - ic.uff.brleomurta/courses/2015.2/es2/aula5a.pdf · Repositório local com ramos • git branch --all -v – Lista os ramos existentes no repositório • git branch](https://reader033.vdocuments.us/reader033/viewer/2022060600/6053a5ae07385c0c58450043/html5/thumbnails/22.jpg)
Principalreferênciabibliográfica• Chacon,S.ProGit.Apress,1ªedição,2009.
Leonardo Murta Git 22