SlideShare uma empresa Scribd logo
BOM DIA!
meu nome: Alwin “Yogarine” Garside
ALVENIR
ALVES
 
AL W IN
WhoAmI? Desenvolvedor PHP há 4 anos 3 anos de experiência com Subversion 1 ano de experiência com Bazaar SysAdmin/Developer na UEPB (2006-2008) ‏ Developer na Itline/CESED (2008-2009) ‏
O que vou falar tanto? O que é VCS? Porquê VCS? Centralizado vs Distribuído Comandos básicos de VCS Introdução a svn, bzr e git
MONOTONE VCS BZR GIT SVN CVS MERCURIAL GNU ARCH SVK Desenvolvimento organizado com
WTF = VCS!?
 
Visual C# (ufa...) ‏
VERSION CONTROL SYSTEM
SISTEMA DE CONTROLE DE VERSÃO
HUH?
PROJETOS SEM VCS:
Pasta por data?
Pasta por versão?
VCS AJUDA A... ...MANTER UM  CHANGELOG
CHANGELOG?
CHANGELOG = LOG DE MUDANÇAS
 
...voltando, VCS AJUDA A... ...MANTER UM  CHANGELOG ...VISUALIZAR E APLICAR  DIFF 'S
DIFF'S?
DIFF = DIFERENÇA
DIFF UNIFICADA:
DIFF LADO-AO-LADO:
...voltando, VCS AJUDA A... ...MANTER UM  CHANGELOG ...VISUALIZAR E APLICAR  DIFF 'S ...TRABALHAR COM MULTIPLAS  BRANCHES
BRANCHES?
BRANCH = GALHO
GALHOS:
PROJETO = ÁRVORE (TREE) ‏
TRONCO (TRUNK) ‏
TREE => TRUNK => BRANCHES
PROJECT TREE: 0.1 0.2 0.3 Feature A Feature B Feature C Feature D Feature E TRUNK SERIES BRANCHES: FEATURE BRANCHES:
BRANCHES!
...voltando, VCS AJUDA A... ...MANTER UM  CHANGELOG ...VISUALIZAR E APLICAR  DIFF 'S ...TRABALHAR COM MULTIPLAS  BRANCHES ...FAZER UM  MERGE  ENTRE 2 BRANCHES
MERGE?
MERGE = JUNÇÃO
0.1 0.2 0.3 Feature A Feature B Feature C Feature D Feature E TRUNK SERIES BRANCHES FEATURE BRANCHES
0.1 0.2 0.3 Feature A Feature B Feature C Feature D Feature E TRUNK MERGE
...emfim, VCS AJUDA A... ...MANTER UM  CHANGELOG ...VISUALIZAR E APLICAR  DIFF 'S ...TRABALHAR COM MULTIPLAS  BRANCHES ...FAZER  MERGES  ENTRE BRANCHES ...MUITO, MUITO MAIS!
CENTRALIZADO VS. DISTRIBUÍDO
VCS CENTRALIZADO REPOSITÓRIO CENTRALIZADO COMPLICA CRIAÇÃO DE “FEATURE BRANCHES” COLABORADORES MANDAM PATCHES (DIFF'S) PARA OS MANTENEDORES OS DESENVOLVEDORES TRABALHAM COM UM  WORKING COPY
WORKING COPY?
WORKING COPY = CÓPIA DE TRABALHO
WORKING COPY REPOSITÓRIO WORKING COPY SERVIDOR REVISÂO 123 PEER
WORKING COPY!
...anyway, VCS CENTRALIZADO: REPOSITÓRIO CENTRALIZADO COMPLICA CRIAÇÃO DE “FEATURE BRANCHES” COLABORADORES MANDAM PATCHES (DIFF'S) PARA OS MANTENEDORES OS DESENVOLVEDORES TRABALHAM COM UM  WORKING COPY
VCS CENTRALIZADO REPOSITÓRIO PEER PEER MANTENEDOR PEER PEER SERVIDOR
VCS DISTRIBUIDO: REPOSITÓRIO DISTRIBUÍDO FACILITA CRIAÇÃO DE BRANCHES COLABORADORES CRIAM BRANCHES MANTENEDORES FAZER MERGES COM BRANCHES DE COLABORADORES CADA DESENVOLVEDOR TRABALHA COM UM PRÓPRIO  REPOSITÓRIO
VCS DISTRIBUIDO main 1.2 feature-tal bugfix-bar main 1.2 main servidor 1.2 feature-x bugfix-y MANTENEDOR JOÃO JOSÉ bugfix bar
COMANDOS BÁSICOS DE VCS
COMANDOS BÁSICOS DE VCS CHECKOUT
CHECKOUT REPOSITÓRIO WORKING COPY SERVIDOR REVISÃO 123 PEER CHECKOUT
COMANDOS BÁSICOS DE VCS checkout  (co) ‏ commit  (cm) ‏
COMMIT REPOSITÓRIO WORKING COPY SERVIDOR REVISÃO 124 PEER COMMIT
COMANDOS BÁSICOS DE VCS checkout  (co) ‏ commit  (cm) ‏ import
IMPORT REPOSITÓRIO PROJETO SEM VCS SERVIDOR REVISÂO 1 PEER
COMANDOS BÁSICOS DE VCS checkout  (co) ‏ commit  (cm) ‏ import export
EXPORT REPOSITÓRIO PASTA SEM VCS SERVIDOR REVISÃO 123 PEER
COMANDOS BÁSICOS DE VCS checkout  (co) ‏ commit  (cm) ‏ import export diff branch merge add mv, cp, mkdir, etc.
INTRODUÇÃO A SVN, BZR e GIT
INTRODUÇÃO A SVN, BZR e GIT Introdução ao uso das ferramentas da  linha de comando Assumindo que está usando Linux Para Windows existem ferramentas gráficas
SVN
SVN = Subversion
Subversion Centralizado Mais usado hoje em dia Google Code, Sourceforge, etc. Ótima integração com Eclipse, Zend Studio, Netbeans, etc.
Subversion Repositório num diretório público, pode ser hospedado pelo http ou protocolo proprietário Subdiretório .svn em cada diretório contém metadata
Subversion Ferramentas de linha de comando: svn svnadmin
Subversion Criando um novo repositório: # svnadmin create /var/svn/meu_repo
Subversion Importando um novo projeto no repositório: $ cd meuprojeto $ svn import /var/svn/meu_repo/trunk
Subversion Fazendo um checkout do repositório $ svn checkout /var/svn/meu_repo/trunk meuprojeto
Subversion Dando commit $ cd meuprojeto # svn commit -m “Corrigiu bug #x”
Subversion Criando um branch # svn mkdir /var/svn/meu_repo/branches # svn cp /var/svn/meu_repo/trunk /var/svn/meu_repo/branches/meu_branch
Subversion Fazendo merge com outro branch: $ cd meu_projeto $ svn merge /var/svn/meu_repo/branches@2 /var/svn/meu_repo/branches@3
BZR
BZR = Bazaar
Bazaar Feito para poder ser usado de forma distribuída ou centralizada Desenvolvida pela Canonical Hospedagem no https://launchpad.net Foco em facilidade de uso
Bazaar Metadata fica na pasta .bzr Metadata apenas na pasta principal Uma pasta pode ser working copy e branch ao mesmo tempo
Bazaar Criar branch para um novo projeto: $ cd meuprojeto $ bzr init Adicionar arquivos no working copy: $ bzr add $ bzr commit -m “Initial import”
Bazaar Criar branch do seu projeto: $ bzr branch meuprojeto meuprojeto-foo Depois, para sincronizar o branch filho: $ cd meuprojeto-foo $ bzr pull Empurrando as mudanças para branch pai: $ bzr commit $ bzr push
GIT
GIT Distribuído Criado pelo Linus Torvalds para ser usado no desenvolvimento do kernel Linux Otimizada para desempenho
GIT Initializar um branch: $ cd meuprojeto $ git init Adicionar arquivos no working copy $ git add $ git commit -m “Initial import”
PERGUNTAS?
Mais informações: Sites http://subversion.tigris.org http://svnbook.red-bean.com http://bazaar-vcs.org http://git-scm.com Entre em contato comigo: yogarine@gmail.com (e-mail / Google Talk) ‏ yogarine@msn.com (Windows Live Messenger) ‏ http://www.yogarine.net http://twitter.com/yogarine

Mais conteúdo relacionado

PPS
Ser Feliz é Uma DecisãO
 
PPTX
Redaccion corporativa
PPS
Certificado
 
PPT
Portfolio
PPTX
Biologia celular
PPT
Itaúna Gold
PPTX
Informe PED Especial - Idosos 2015
Ser Feliz é Uma DecisãO
 
Redaccion corporativa
Certificado
 
Portfolio
Biologia celular
Itaúna Gold
Informe PED Especial - Idosos 2015

Destaque (16)

PPT
Template apresentacao fee
PPS
A Vista De Ti
 
PPS
Ferrari
 
PDF
A troca de comando é só o começo
DOC
Apostila de funções de 2º grau
PPTX
Menú Principal Presentación3
PPS
Sabios Consejos
PPT
Clientes Atendidos Magnetize
DOC
Plano de 10ª aula 7ª série8º ano gestar 2012
PPT
Las Vocales
PPS
Quem
 
PPS
Eu Estou Apaixonada
 
PPT
Efeitos Totais
PDF
Ajuste fiscal e recessão no Brasil em 2015 (Fernando Maccari Lara)
PPS
A Dimensao Do Universo
 
Template apresentacao fee
A Vista De Ti
 
Ferrari
 
A troca de comando é só o começo
Apostila de funções de 2º grau
Menú Principal Presentación3
Sabios Consejos
Clientes Atendidos Magnetize
Plano de 10ª aula 7ª série8º ano gestar 2012
Las Vocales
Quem
 
Eu Estou Apaixonada
 
Efeitos Totais
Ajuste fiscal e recessão no Brasil em 2015 (Fernando Maccari Lara)
A Dimensao Do Universo
 
Anúncio

Semelhante a Desenvolvimento organizado com VCS (20)

PDF
Conceitos e exemplos em versionamento de código
PDF
“Revision Control Systems: Subversion (SVN)” por Tiago Rodrigues
PDF
SVN - Subversion: Guia de sobrevivência do usuário
PDF
SVN no Desenvolvimento de Software
PPT
Controlando Projetos com Netbeans e Subversion
PPTX
Cvs everton
PDF
Version all the things [Workflows com Git]
PDF
Dojo - SVN
PPTX
Controle de versão
PDF
SVN: Controle de revisões com subversion - Thiago Rafael Becker
PDF
Apresentação controle de versão
PPTX
Sistemas de Controle de Versão
PPT
CVS - Slides Parte 1 - Introdução
PDF
Git controlo de_versoes
PDF
Branches-Intro
PDF
Integração Contínua com CVS, CruiseControl, AntHill, Gump
PDF
Intervalo técnico Git/SVN
PDF
Git - Visão Geral
PDF
Controle de Versões com Git
Conceitos e exemplos em versionamento de código
“Revision Control Systems: Subversion (SVN)” por Tiago Rodrigues
SVN - Subversion: Guia de sobrevivência do usuário
SVN no Desenvolvimento de Software
Controlando Projetos com Netbeans e Subversion
Cvs everton
Version all the things [Workflows com Git]
Dojo - SVN
Controle de versão
SVN: Controle de revisões com subversion - Thiago Rafael Becker
Apresentação controle de versão
Sistemas de Controle de Versão
CVS - Slides Parte 1 - Introdução
Git controlo de_versoes
Branches-Intro
Integração Contínua com CVS, CruiseControl, AntHill, Gump
Intervalo técnico Git/SVN
Git - Visão Geral
Controle de Versões com Git
Anúncio

Último (19)

PDF
Apple Pippin Uma breve introdução. - David Glotz
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PDF
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
PPTX
Aula 18 - Manipulacao De Arquivos python
PPTX
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PPTX
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PDF
Processos na gestão de transportes, TM100 Col18
PDF
Aula04-Academia Heri- Tecnologia Geral 2025
PDF
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Apple Pippin Uma breve introdução. - David Glotz
COBITxITIL-Entenda as diferença em uso governança TI
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
Aula 18 - Manipulacao De Arquivos python
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
Custos e liquidação no SAP Transportation Management, TM130 Col18
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Processos na gestão de transportes, TM100 Col18
Aula04-Academia Heri- Tecnologia Geral 2025
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx

Desenvolvimento organizado com VCS