Sistemas de controle de versões de arquivos
GIT

Criado por Linus Torvalds
GIT x SVN
GIT x SVN

SVN - Centralizado

Git - Distribuído
GIT x SVN
Caso de Uso
GIT x SVN
Caso de Uso

Repositório da Mozilla
240.000 arquivos
10 anos de histórico do projeto
GIT x SVN
Caso de Uso

Repositório da Mozilla
240.000 arquivos
10 anos de histórico do projeto

12	 GB
Espaço usado no SVN
GIT x SVN
Caso de Uso

Repositório da Mozilla
240.000 arquivos
10 anos de histórico do projeto

12	 GB 420	 MB
Espaço usad...
GIT x SVN
Caso de Uso

30x

Repositório da Mozilla
240.000 arquivos
10 anos de histórico do projeto

menos espaço após
mig...
Branching x Tagging
Branching x Tagging

master
Branching x Tagging
feature_x
branch

master

merge
Branching x Tagging
feature_x
merge

branch

master
branch

feature_y
Branching x Tagging
Tag 1.0.0
feature_x
merge

branch

master
branch

feature_y
Branching x Tagging
Tag 1.0.0
feature_x
merge

branch

master
branch

feature_y

Tag 1.0.1
GIT x SVN
GIT x SVN

GIT
distribuído

armazenamento otimizado

+++ rápido
GIT x SVN

GIT
distribuído

armazenamento otimizado

+++ rápido

SVN
centralizado
duplica código
possui controle de acesso
SVN
Servidor

Cliente X
Cliente Y
SVN
Servidor

checkout

Cliente X
Cliente Y
SVN
Servidor

checkout

Cliente X
Cliente Y
alteração
SVN
Servidor

checkout

Cliente X
commit
alteração

Cliente Y
SVN
Servidor

checkout

update

Cliente X
commit
alteração

Cliente Y
GIT
Servidor

Cliente X
Cliente Y
GIT
Servidor

clone

Cliente X
Cliente Y
GIT
Servidor

clone

Cliente X
Cliente Y
alteração
GIT
Servidor

clone

Cliente X
Cliente Y
alteração

add
GIT
Servidor

clone

Cliente X
Cliente Y
alteração

commit

add
GIT
Servidor

clone

Cliente X
push

Cliente Y
alteração

commit

add
GIT
Servidor

clone

pull

Cliente X
push

Cliente Y
alteração

commit

add
GIT Boas Práticas
Faça commit toda hora!!
!

Faça commit a cada funcionalidade!!
GIT Boas Práticas
Faça commit toda hora!!
!

Faça commit a cada funcionalidade!!
Isso possibilita:
- Rastreabilidade das a...
GIT Boas Práticas
Não inserir comentários redundantes
ao fazer commit.

Ex.: git commit -m “Remoção da validação do cpf ”
GIT Boas Práticas
As mensagens não devem dizer apenas O QUE foi
feito, mas PORQUE foi feito.

Ex.: git commit -m “Remoção ...
GIT Boas Práticas
Use o histórico… a toda hora!
gitk
gitk
gitk
gitk
Jessé Cirilo Soares	

Analista de Sistemas no LEMAF/UFLA

jessecsoares@gmail.com	

@jessebodao	

linkedin.com/in/jessesoar...
Git vs. SVN
Git vs. SVN
Upcoming SlideShare
Loading in...5
×

Git vs. SVN

857

Published on

Breve comparação entre as ferramentas de versionamento de código Git e SVN e algumas boas práticas no uso do Git.

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
857
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
45
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

Git vs. SVN

  1. 1. Sistemas de controle de versões de arquivos
  2. 2. GIT Criado por Linus Torvalds
  3. 3. GIT x SVN
  4. 4. GIT x SVN SVN - Centralizado Git - Distribuído
  5. 5. GIT x SVN Caso de Uso
  6. 6. GIT x SVN Caso de Uso Repositório da Mozilla 240.000 arquivos 10 anos de histórico do projeto
  7. 7. GIT x SVN Caso de Uso Repositório da Mozilla 240.000 arquivos 10 anos de histórico do projeto 12 GB Espaço usado no SVN
  8. 8. GIT x SVN Caso de Uso Repositório da Mozilla 240.000 arquivos 10 anos de histórico do projeto 12 GB 420 MB Espaço usado no SVN Espaço usado no Git
  9. 9. GIT x SVN Caso de Uso 30x Repositório da Mozilla 240.000 arquivos 10 anos de histórico do projeto menos espaço após migrar do SVN para o Git 12 GB 420 MB Espaço usado no SVN Espaço usado no Git
  10. 10. Branching x Tagging
  11. 11. Branching x Tagging master
  12. 12. Branching x Tagging feature_x branch master merge
  13. 13. Branching x Tagging feature_x merge branch master branch feature_y
  14. 14. Branching x Tagging Tag 1.0.0 feature_x merge branch master branch feature_y
  15. 15. Branching x Tagging Tag 1.0.0 feature_x merge branch master branch feature_y Tag 1.0.1
  16. 16. GIT x SVN
  17. 17. GIT x SVN GIT distribuído armazenamento otimizado +++ rápido
  18. 18. GIT x SVN GIT distribuído armazenamento otimizado +++ rápido SVN centralizado duplica código possui controle de acesso
  19. 19. SVN Servidor Cliente X Cliente Y
  20. 20. SVN Servidor checkout Cliente X Cliente Y
  21. 21. SVN Servidor checkout Cliente X Cliente Y alteração
  22. 22. SVN Servidor checkout Cliente X commit alteração Cliente Y
  23. 23. SVN Servidor checkout update Cliente X commit alteração Cliente Y
  24. 24. GIT Servidor Cliente X Cliente Y
  25. 25. GIT Servidor clone Cliente X Cliente Y
  26. 26. GIT Servidor clone Cliente X Cliente Y alteração
  27. 27. GIT Servidor clone Cliente X Cliente Y alteração add
  28. 28. GIT Servidor clone Cliente X Cliente Y alteração commit add
  29. 29. GIT Servidor clone Cliente X push Cliente Y alteração commit add
  30. 30. GIT Servidor clone pull Cliente X push Cliente Y alteração commit add
  31. 31. GIT Boas Práticas Faça commit toda hora!! ! Faça commit a cada funcionalidade!!
  32. 32. GIT Boas Práticas Faça commit toda hora!! ! Faça commit a cada funcionalidade!! Isso possibilita: - Rastreabilidade das alterações; - Visualização da evolução do projeto; - Usar o histórico como documentação do projeto.
  33. 33. GIT Boas Práticas Não inserir comentários redundantes ao fazer commit. Ex.: git commit -m “Remoção da validação do cpf ”
  34. 34. GIT Boas Práticas 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”
  35. 35. GIT Boas Práticas Use o histórico… a toda hora! gitk gitk gitk gitk
  36. 36. Jessé Cirilo Soares Analista de Sistemas no LEMAF/UFLA jessecsoares@gmail.com @jessebodao linkedin.com/in/jessesoares
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×