sistema de controle de versão - cvs, svn e git
DESCRIPTION
Apresentação feita em 2010 em um trabalho de faculdade sobre Sistema de Controle de Versão. Obs.: Só coloquei aqui para não perder;TRANSCRIPT
Sistema de Versionamento de Código
Nome: Acácio Fernandez Egas Junior - 0821193Nome: Fernando Queiroz Santana - 0820864Nome: Francisco J. de Oliveira Castilho - 098161Nome: Gabriel Marcos Santos Rubens - 0820589Nome: Marcio Lorran dos Reis - 0820875Nome: Walter Dalpra de Souza – 103271Nome: Wellington do Rosário Biliera - 0820307
Sistema de Versionamento de Código
É um sistema que atribui nomes (marcações) as alterações feitas no “código fonte”
Tropa de Elite 2!Como Capitão Nascimento adotou um controlador de versões no BOPE
“Missão dada é missão cumprida”
Vamos desenvolver um sistema novo.E ele vai ser...
Ok, minha equipe vai iniciar o desenvolvimento amanhã
Problema básico
Salvar
Problema básico
Salvar Voltar Cancelar
Problema básico
Salvar Voltar Cancelar
Problema básico
Vamos controlar as versões Com arquivos zipados
Gambiarra de Versionamento de Código
Gambiarra de Versionamento de Código
V 0.1 V 0.2 V 1.0
Gambiarra de Versionamento de Código
v
Cadê a versão sem a alteração na lógica de login
Está guardada...Em um zip!
v
Em qual zip está?Fala!
Lei de Murphy“Se algo pode dar errado, dará errado da pior maneira, no pior momento e de modo a causar o maior estrago possível”
Lei de Clark“Murphy era otimista”
Lei do Capitão Nascimento“Capitão vai dar merda, capitão. […]Capitão, já disse que vai dar merda!”
Podemos utilizar um sistemapara controlar as versões
Lei de Murphy“Se algo pode dar errado, dará errado da pior maneira, no pior momento e de modo a causar o maior estrago possível”
Lei de Clark“Murphy era otimista”
Lei do Capitão Nascimento“Capitão vai dar merda, capitão. […]Capitão, já disse que vai dar merda!”
Qual a vantagem de utilizarum sistema pra controlar...
Sistemas de Controle de Versão
Trabalhar com equipes grandes
Equipes distribuídas
Colaboração no desenvolvimento
Viabiliza OpenSource
Sistemas de Controle de Versão
Concurrent Version System (CVS)
Subversion (SVN)
GIT
Sistemas de Controle de Versão
Centralizado:Concurrent Version System
(CVS)Subversion (SVN)
Descentralizado:GIT
Centralizado
Descentralizado
De hoje em diante nós vamostrabalhar com o CVS
Capitão... vai dar merda,
capitão
Concurrent Version System (CVS)
Publicado em 1983
Revision Control System (RCS)
O primeiro amplamente adotado
Melhor que não ter nada ou não ;)
Concurrent Version System (CVS)
cvs checkout: Baixa do servidor
cvs update: Atualiza com o servidor
cvs commit: Envia para o servidor
Concurrent Version System (CVS)
cvs add: Adiciona ao controle de versão
cvs remove: Remove do controle de versão
svn diff: Verificar diferença com o servidor
Concurrent Version System (CVS)
Foi o primeiro passo, mas...
Não pode renomear
Não pode mover
Muitos conflitos
Amor, no lugar do CVS você pode utilizar a SVN
Nunca mais fale do meu trabalho!Entendeu?!?!
A tropa é minha.
CVS não deu certo.Vamos pro SVN!
Eu já disse que vai dar merda!
Subversion (SVN)
Evolução do CVS
Lançado em 2000
Correção de Bugs do CVS
Subversion (SVN)
Merge melhor que do CVS
Interfaces gráficas (TortoiseSVN)
Substituto direto do CVS
Subversion (SVN)
svn checkout: Baixa do servidor
svn update: Atualiza com o servidor
svn commit: Envia para o servidor
Subversion (SVN)
svn add: Adiciona ao controle de versão
svn remove: Remove do controle de versão
svn diff: Verificar diferença com o servidor
Subversion (SVN)
Hospedagem
Quem sabe utilizar o Git?Fala porr#!!!
Ele sabe! Ele sabe!
Vou ter que convencer a tropa aadotar essa merda!
Melhor levar o “caveirabook” pra fazero código na hora!
Lei de Murphy“Se algo pode dar errado, dará errado da pior maneira, no pior momento e de modo a causar o maior estrago possível”
Lei de Clark“Murphy era otimista”
Lei do Capitão Nascimento“Capitão vai dar merda, capitão. […]Capitão, já disse que vai dar merda!”
Agora minha equipe vaiutilizar git
Lei de Murphy“Se algo pode dar errado, dará errado da pior maneira, no pior momento e de modo a causar o maior estrago possível”
Lei de Clark“Murphy era otimista”
Lei do Capitão Nascimento“Capitão vai dar merda, capitão. […]Capitão, já disse que vai dar merda!”
Quem criou o git?E como funciona?
Git
Merge++
Ferramenta git-svn
Commit em ordem (Rebase)
Todo histórico
Lei de Murphy“Se algo pode dar errado, dará errado da pior maneira, no pior momento e de modo a causar o maior estrago possível”
Lei de Clark“Murphy era otimista”
Lei do Capitão Nascimento“Capitão vai dar merda, capitão. […]Capitão, já disse que vai dar merda!”
Eu vou ligar o “caveirabook” pra fazer uma demo...
Git
Fluxo de trabalho offline (master):
git inittouch READMEgit add .git commit -m 'mensagem'
Git
Trabalhando com branch:
git checkout -b desenvgit add .git commit -m 'mensagem'
Git
Trabalhando com branch:
git checkout -b desenvgit add .git commit -m 'mensagem'
Git
Trabalhando com branch:
git checkout mastergit merge desenv
Lei de Murphy“Se algo pode dar errado, dará errado da pior maneira, no pior momento e de modo a causar o maior estrago possível”
Lei de Clark“Murphy era otimista”
Lei do Capitão Nascimento“Capitão vai dar merda, capitão. […]Capitão, já disse que vai dar merda!”
Mas... Onde vai ficarhospedado o código fonte?
Git - GitHub
Orkut de desenvolvedoresCompartilhar códigoEstudar Você ainda não tem uma conta?
Lei de Murphy“Se algo pode dar errado, dará errado da pior maneira, no pior momento e de modo a causar o maior estrago possível”
Lei de Clark“Murphy era otimista”
Lei do Capitão Nascimento“Capitão vai dar merda, capitão. […]Capitão, já disse que vai dar merda!”
Ok, mas da uma demo deComo trabalhar com github.
Git - GitHub
Trabalhando com GitHub.com
git clone [email protected]:nascimento/bope.git
git checkout -b desenv
Adiciona/Deleta/Modifica (git add)
git commit -m “mensagem” (commit offline)
Git - GitHub
Outros desenvolvendo no github
git pull origin master
git checkout desenv
git rebase master
Git - GitHub
git checkout master
git merge desenv
git push origin master
Continua...
Lei de Murphy“Se algo pode dar errado, dará errado da pior maneira, no pior momento e de modo a causar o maior estrago possível”
Lei de Clark“Murphy era otimista”
Lei do Capitão Nascimento“Capitão vai dar merda, capitão. […]Capitão, já disse que vai dar merda!”
WTF...Eu apareci várias vezes nesse PPT e com essa cara de bunda!
E não me deram uma fala
Agora o padrão do batalhãoE o git com github
Agora só vou utilizar sistemas
descentralizados!
O próximo que falar emCVS ou SVC vai prosaco (ou vassoura)!
Dúvidas