Download - Git vs. SVN
![Page 1: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/1.jpg)
![Page 2: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/2.jpg)
Sistemas de controle de versões de arquivos
![Page 3: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/3.jpg)
GIT
Criado por Linus Torvalds
![Page 4: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/4.jpg)
GIT x SVN
![Page 5: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/5.jpg)
GIT x SVN
SVN - Centralizado Git - Distribuído
![Page 6: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/6.jpg)
GIT x SVNCaso de Uso
![Page 7: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/7.jpg)
GIT x SVN
Repositório da Mozilla240.000 arquivos
10 anos de histórico do projeto
Caso de Uso
![Page 8: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/8.jpg)
GIT x SVN
Repositório da Mozilla240.000 arquivos
10 anos de histórico do projeto
Caso de Uso
12 GBEspaço usado no SVN
![Page 9: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/9.jpg)
GIT x SVN
Repositório da Mozilla240.000 arquivos
10 anos de histórico do projeto
Caso de Uso
12 GBEspaço usado no SVN
420 MBEspaço usado no Git
![Page 10: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/10.jpg)
GIT x SVN
Repositório da Mozilla240.000 arquivos
10 anos de histórico do projeto
Caso de Uso
12 GBEspaço usado no SVN
420 MBEspaço usado no Git
30x menos espaço após
migrar do SVN para o Git
![Page 11: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/11.jpg)
Branching x Tagging
![Page 12: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/12.jpg)
Branching x Tagging
master
![Page 13: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/13.jpg)
Branching x Tagging
masterbranch
feature_x
merge
![Page 14: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/14.jpg)
Branching x Tagging
master
feature_ybranch
branch
feature_x
merge
![Page 15: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/15.jpg)
Branching x Tagging
master
feature_ybranch
Tag 1.0.0
branch
feature_x
merge
![Page 16: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/16.jpg)
Branching x Tagging
master
feature_ybranch
Tag 1.0.0
branch
feature_x
merge
Tag 1.0.1
![Page 17: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/17.jpg)
GIT x SVN
![Page 18: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/18.jpg)
GIT x SVN
GITdistribuído
armazenamento otimizado+++ rápido
![Page 19: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/19.jpg)
GIT x SVN
GITdistribuído
armazenamento otimizado+++ rápido
SVNcentralizado
duplica códigopossui controle de acesso
![Page 20: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/20.jpg)
SVNServidor
Cliente Y
Cliente X
![Page 21: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/21.jpg)
SVN
checkout
Servidor
Cliente Y
Cliente X
![Page 22: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/22.jpg)
SVN
checkout
Servidor
Cliente Y
alteração
Cliente X
![Page 23: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/23.jpg)
SVN
checkout
commit
Servidor
Cliente Y
alteração
Cliente X
![Page 24: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/24.jpg)
SVN
checkout
commit
update
Servidor
Cliente Y
alteração
Cliente X
![Page 25: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/25.jpg)
GITServidor
Cliente X
Cliente Y
![Page 26: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/26.jpg)
GIT
clone
Servidor
Cliente X
Cliente Y
![Page 27: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/27.jpg)
GIT
clone
alteração
Servidor
Cliente X
Cliente Y
![Page 28: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/28.jpg)
GIT
clone
add
alteração
Servidor
Cliente X
Cliente Y
![Page 29: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/29.jpg)
GIT
clone
commit
add
alteração
Servidor
Cliente X
Cliente Y
![Page 30: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/30.jpg)
GIT
clone
push
commit
add
alteração
Servidor
Cliente X
Cliente Y
![Page 31: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/31.jpg)
GIT
clone
push
pull
commit
add
alteração
Servidor
Cliente X
Cliente Y
![Page 32: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/32.jpg)
![Page 33: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/33.jpg)
Faça commit toda hora!! !
Faça commit a cada funcionalidade!!
GIT Boas Práticas
![Page 34: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/34.jpg)
Faça commit toda hora!! !
Faça commit a cada funcionalidade!!
- Rastreabilidade das alterações;
- Usar o histórico como documentação do projeto.
- Visualização da evolução do projeto;
Isso possibilita:
GIT Boas Práticas
![Page 35: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/35.jpg)
Não inserir comentários redundantes ao fazer commit.
Ex.: git commit -m “Remoção da validação do cpf ”
GIT Boas Práticas
![Page 36: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/36.jpg)
As mensagens não devem dizer apenas O QUE foi feito, mas PORQUE foi feito.
Ex.: git commit -m “Remoção da validação do cpf devido à internacionalização do cadastro e o cpf ser referente apenas ao Brasil”
GIT Boas Práticas
![Page 37: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/37.jpg)
Use o histórico… a toda hora!
gitk
gitk
gitk
gitk
GIT Boas Práticas
![Page 38: Git vs. SVN](https://reader035.vdocuments.pub/reader035/viewer/2022081717/547b9d695806b5d13f8b45f2/html5/thumbnails/38.jpg)
Jessé Cirilo Soares Analista de Sistemas no LEMAF/UFLA
[email protected] @jessebodao
linkedin.com/in/jessesoares