sistema de controle de versão - cvs, svn e git

67
Sistema de Versionamento de Código Nome: Acácio Fernandez Egas Junior - 0821193 Nome: Fernando Queiroz Santana - 0820864 Nome: Francisco J. de Oliveira Castilho - 098161 Nome: Gabriel Marcos Santos Rubens - 0820589 Nome: Marcio Lorran dos Reis - 0820875

Upload: gabriel-rubens

Post on 29-Jun-2015

1.296 views

Category:

Technology


0 download

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

Page 1: Sistema de Controle de Versão - CVS, SVN e GIT

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

Page 2: Sistema de Controle de Versão - CVS, SVN e GIT

Sistema de Versionamento de Código

É um sistema que atribui nomes (marcações) as alterações feitas no “código fonte”

Page 3: Sistema de Controle de Versão - CVS, SVN e GIT
Page 4: Sistema de Controle de Versão - CVS, SVN e GIT

Tropa de Elite 2!Como Capitão Nascimento adotou um controlador de versões no BOPE

“Missão dada é missão cumprida”

Page 5: Sistema de Controle de Versão - CVS, SVN e GIT

Vamos desenvolver um sistema novo.E ele vai ser...

Page 6: Sistema de Controle de Versão - CVS, SVN e GIT

Ok, minha equipe vai iniciar o desenvolvimento amanhã

Page 7: Sistema de Controle de Versão - CVS, SVN e GIT

Problema básico

Salvar

Page 8: Sistema de Controle de Versão - CVS, SVN e GIT

Problema básico

Salvar Voltar Cancelar

Page 9: Sistema de Controle de Versão - CVS, SVN e GIT

Problema básico

Salvar Voltar Cancelar

Page 10: Sistema de Controle de Versão - CVS, SVN e GIT

Problema básico

Page 11: Sistema de Controle de Versão - CVS, SVN e GIT

Vamos controlar as versões Com arquivos zipados

Page 12: Sistema de Controle de Versão - CVS, SVN e GIT

Gambiarra de Versionamento de Código

Page 13: Sistema de Controle de Versão - CVS, SVN e GIT

Gambiarra de Versionamento de Código

V 0.1 V 0.2 V 1.0

Page 14: Sistema de Controle de Versão - CVS, SVN e GIT

Gambiarra de Versionamento de Código

v

Page 15: Sistema de Controle de Versão - CVS, SVN e GIT
Page 16: Sistema de Controle de Versão - CVS, SVN e GIT

Cadê a versão sem a alteração na lógica de login

Page 17: Sistema de Controle de Versão - CVS, SVN e GIT

Está guardada...Em um zip!

Page 18: Sistema de Controle de Versão - CVS, SVN e GIT

v

Page 19: Sistema de Controle de Versão - CVS, SVN e GIT

Em qual zip está?Fala!

Page 20: Sistema de Controle de Versão - CVS, SVN e 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!”

Podemos utilizar um sistemapara controlar as versões

Page 21: Sistema de Controle de Versão - CVS, SVN e 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!”

Qual a vantagem de utilizarum sistema pra controlar...

Page 22: Sistema de Controle de Versão - CVS, SVN e GIT

Sistemas de Controle de Versão

Trabalhar com equipes grandes

Equipes distribuídas

Colaboração no desenvolvimento

Viabiliza OpenSource

Page 23: Sistema de Controle de Versão - CVS, SVN e GIT

Sistemas de Controle de Versão

Concurrent Version System (CVS)

Subversion (SVN)

GIT

Page 24: Sistema de Controle de Versão - CVS, SVN e GIT

Sistemas de Controle de Versão

Centralizado:Concurrent Version System

(CVS)Subversion (SVN)

Descentralizado:GIT

Page 25: Sistema de Controle de Versão - CVS, SVN e GIT

Centralizado

Page 26: Sistema de Controle de Versão - CVS, SVN e GIT

Descentralizado

Page 27: Sistema de Controle de Versão - CVS, SVN e GIT

De hoje em diante nós vamostrabalhar com o CVS

Page 28: Sistema de Controle de Versão - CVS, SVN e GIT

Capitão... vai dar merda,

capitão

Page 29: Sistema de Controle de Versão - CVS, SVN e GIT

Concurrent Version System (CVS)

Publicado em 1983

Revision Control System (RCS)

O primeiro amplamente adotado

Melhor que não ter nada ou não ;)

Page 30: Sistema de Controle de Versão - CVS, SVN e GIT

Concurrent Version System (CVS)

cvs checkout: Baixa do servidor

cvs update: Atualiza com o servidor

cvs commit: Envia para o servidor

Page 31: Sistema de Controle de Versão - CVS, SVN e GIT

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

Page 32: Sistema de Controle de Versão - CVS, SVN e GIT

Concurrent Version System (CVS)

Foi o primeiro passo, mas...

Não pode renomear

Não pode mover

Muitos conflitos

Page 33: Sistema de Controle de Versão - CVS, SVN e GIT

Amor, no lugar do CVS você pode utilizar a SVN

Page 34: Sistema de Controle de Versão - CVS, SVN e GIT

Nunca mais fale do meu trabalho!Entendeu?!?!

A tropa é minha.

Page 35: Sistema de Controle de Versão - CVS, SVN e GIT

CVS não deu certo.Vamos pro SVN!

Page 36: Sistema de Controle de Versão - CVS, SVN e GIT

Eu já disse que vai dar merda!

Page 37: Sistema de Controle de Versão - CVS, SVN e GIT

Subversion (SVN)

Evolução do CVS

Lançado em 2000

Correção de Bugs do CVS

Page 38: Sistema de Controle de Versão - CVS, SVN e GIT

Subversion (SVN)

Merge melhor que do CVS

Interfaces gráficas (TortoiseSVN)

Substituto direto do CVS

Page 39: Sistema de Controle de Versão - CVS, SVN e GIT

Subversion (SVN)

svn checkout: Baixa do servidor

svn update: Atualiza com o servidor

svn commit: Envia para o servidor

Page 40: Sistema de Controle de Versão - CVS, SVN e GIT

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

Page 41: Sistema de Controle de Versão - CVS, SVN e GIT

Subversion (SVN)

Hospedagem

Page 42: Sistema de Controle de Versão - CVS, SVN e GIT

Quem sabe utilizar o Git?Fala porr#!!!

Page 43: Sistema de Controle de Versão - CVS, SVN e GIT

Ele sabe! Ele sabe!

Page 44: Sistema de Controle de Versão - CVS, SVN e GIT

Vou ter que convencer a tropa aadotar essa merda!

Page 45: Sistema de Controle de Versão - CVS, SVN e GIT

Melhor levar o “caveirabook” pra fazero código na hora!

Page 46: Sistema de Controle de Versão - CVS, SVN e 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!”

Agora minha equipe vaiutilizar git

Page 47: Sistema de Controle de Versão - CVS, SVN e 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?

Page 48: Sistema de Controle de Versão - CVS, SVN e GIT
Page 49: Sistema de Controle de Versão - CVS, SVN e GIT

Git

Merge++

Ferramenta git-svn

Commit em ordem (Rebase)

Todo histórico

Page 50: Sistema de Controle de Versão - CVS, SVN e 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!”

Eu vou ligar o “caveirabook” pra fazer uma demo...

Page 51: Sistema de Controle de Versão - CVS, SVN e GIT

Git

Fluxo de trabalho offline (master):

git inittouch READMEgit add .git commit -m 'mensagem'

Page 52: Sistema de Controle de Versão - CVS, SVN e GIT

Git

Trabalhando com branch:

git checkout -b desenvgit add .git commit -m 'mensagem'

Page 53: Sistema de Controle de Versão - CVS, SVN e GIT

Git

Trabalhando com branch:

git checkout -b desenvgit add .git commit -m 'mensagem'

Page 54: Sistema de Controle de Versão - CVS, SVN e GIT

Git

Trabalhando com branch:

git checkout mastergit merge desenv

Page 55: Sistema de Controle de Versão - CVS, SVN e 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!”

Mas... Onde vai ficarhospedado o código fonte?

Page 56: Sistema de Controle de Versão - CVS, SVN e GIT
Page 57: Sistema de Controle de Versão - CVS, SVN e GIT

Git - GitHub

Orkut de desenvolvedoresCompartilhar códigoEstudar Você ainda não tem uma conta?

Page 58: Sistema de Controle de Versão - CVS, SVN e 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!”

Ok, mas da uma demo deComo trabalhar com github.

Page 59: Sistema de Controle de Versão - CVS, SVN e GIT

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)

Page 60: Sistema de Controle de Versão - CVS, SVN e GIT

Git - GitHub

Outros desenvolvendo no github

git pull origin master

git checkout desenv

git rebase master

Page 61: Sistema de Controle de Versão - CVS, SVN e GIT

Git - GitHub

git checkout master

git merge desenv

git push origin master

Continua...

Page 62: Sistema de Controle de Versão - CVS, SVN e 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!”

WTF...Eu apareci várias vezes nesse PPT e com essa cara de bunda!

E não me deram uma fala

Page 63: Sistema de Controle de Versão - CVS, SVN e GIT

Agora o padrão do batalhãoE o git com github

Page 64: Sistema de Controle de Versão - CVS, SVN e GIT

Agora só vou utilizar sistemas

descentralizados!

Page 65: Sistema de Controle de Versão - CVS, SVN e GIT

O próximo que falar emCVS ou SVC vai prosaco (ou vassoura)!

Page 66: Sistema de Controle de Versão - CVS, SVN e GIT
Page 67: Sistema de Controle de Versão - CVS, SVN e GIT

Dúvidas