Porque usar um sistema de controle de versão distribuído como GIT?
Controle de Versão GIT
-
Upload
rafael-izidoro -
Category
Technology
-
view
242 -
download
3
Transcript of Controle de Versão GIT
![Page 1: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/1.jpg)
Controle de Versãosvn || git
![Page 2: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/2.jpg)
while (true) { echo “Kung Lao wins”;}
Há muito tempo atrás, em uma galáxia distante...
alexandre_loser.php
alexandre_loser20050101.tar.gz
while (true) { echo “Kung Lao wins...Fatality”;}
alexandre_loser.php
alexandre_loser20050102.tar.gz
![Page 3: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/3.jpg)
Sistema de Controle de Versão (VCS)
![Page 4: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/4.jpg)
Sistema de Controle de Versão
alexandre_loser.php
alexandre_loser.php
A
B
Repositório
alexandre_loser.php {v1}alexandre_loser.php {v2}...alexandre_loser.php {vn}
![Page 5: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/5.jpg)
CVSanos 90
Concurrent Version System
![Page 6: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/6.jpg)
CVS•Lento
•Não é transacional
•Não é distribuído*
•Eternos bugs
•Lock em arquivos
![Page 7: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/7.jpg)
•ClearCase
•PVCS
•VSS (Visual Source Safe)
•PerForce
Ctrl+C Ctrl+V CVS
![Page 8: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/8.jpg)
Subversion“CVS Done Right”
![Page 9: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/9.jpg)
Subversion“cvs done right”
• Corrigiu os bugs do CVS
• Atômico
• Renomear, Copiar, Mover e Deletar
• Merge
• Bibliotecas clients
![Page 10: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/10.jpg)
SVN é o projeto mais sem sentido que já foi iniciado...
Linus Torvalds
![Page 11: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/11.jpg)
GITem 2007
![Page 12: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/12.jpg)
SVN x GIT
![Page 13: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/13.jpg)
SVN herdou a lerdeza do CVS...
svn update | svn log | svn commit... svn *
GIT é rápido....repositório local
![Page 14: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/14.jpg)
SVN não é distribuído...
diff
commitupdate
log
Avisa o Junior e...
![Page 15: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/15.jpg)
![Page 16: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/16.jpg)
GIT é distribuído...
.git
.git
.git
.git
commit
diff
status
add
push
pull
Todo o repositório é local
![Page 17: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/17.jpg)
mais vantagens...
repositório local
todo controle OFFLINE
![Page 18: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/18.jpg)
Branches no git são mais intuitivos...
git checkout -b A svn copy /srv/repos/trunk
/srv/repos/branches/A;svn checkout /srv/repos/branches/A /local/branches/A
![Page 19: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/19.jpg)
GIT tem uma área intermediária
só faz commit dos arquivos adicionados na área
![Page 20: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/20.jpg)
o core do LINUX é controlado por GIT
o RAILS é controlado por GIT
o CAKEPHP é controlado por GIT
o ZEND FRAMEWORK é controlado por GIT
o NODE.JS é controlado por GIT
por quê não o Youppie?
![Page 21: Controle de Versão GIT](https://reader036.fdocuments.net/reader036/viewer/2022081512/55b363e1bb61eb99548b45f0/html5/thumbnails/21.jpg)
Dúvidas?