Your SlideShare is downloading. ×
0
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Workshop  sistema de versionamento de código - git
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Workshop sistema de versionamento de código - git

247

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

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

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Sistema de Versionamento de Código - GIT Thiago Ribeiro Filadelfo Encontre-me no:
  • 2. THIAGOFILADELFO.COM.BR | BUILDERS CODES Sobre Thiago Ribeiro Filadelfo Formado em Ciência da Computação pela Faculdade da Fundação Instituto Tecnológico de Osasco, pós-graduado pela Escola Politécnica - USP e FIAP. Desde 2006 atuando na área de desenvolvimento de software, com experiências em web, desktop, mobile e outras tecnologias. Atualmente focado no desenvolvimento de aplicações para Android e iOS.
  • 3. THIAGOFILADELFO.COM.BR | BUILDERS CODES Agenda 1. Motivação 2. Introdução ao Controle de Versão 3. Conceitos de Git 4. Mão na massa !? Hand-on 5. Referências para estudos 6. Perguntas Bateu aquela dúvida ? Enroscou ? thiago.filadelfo@gmail.com Lembrente: Deixar baixando o instalador do GitHub. http://github.com, no tópico: The power of GitHub on your desktop abaixo disto tem um botão de dowload
  • 4. Já pensou em fazer um zip do seu projeto ? - Arquivos zips muito grande tendem a corromperem; - Muitos arquivos com tags indicando qual é a versão (-V1) ou datados (-04072013); - Dificil de armazenar e migrar; THIAGOFILADELFO.COM.BR | BUILDERS CODES Motivação
  • 5. Gastou horas para achar o maldito bug? - Quando não controlamos os documentos, não sabemos quais alterações foram feitas. - Gasta-se muito tempo para localizar o arquivo que retorne ou que solucione o bug; THIAGOFILADELFO.COM.BR | BUILDERS CODES
  • 6. Perdeu o controle do change log do projeto ? - Impossível afirmar que estamos evoluindo no projeto; - Dificuldade de manter informado os envolvidos as novidades daquele build ou release; THIAGOFILADELFO.COM.BR | BUILDERS CODES
  • 7. Falaremos de uma ferramenta que contempla muitas destas funcionalidades Gestão de controle disciplina da Ciência da Computação e Engenharia de software com finalidades de gerir diferentes versões de qualquer documento. Sistema de controle de versão ampliamente utilizado em fábricas e softwares, com o propósito de aproximar os envolvidos, gerir versões e produzir aplicativos executável estáveis. THIAGOFILADELFO.COM.BR | BUILDERS CODES Controle de versão
  • 8. Introdução ao Git / GitHub ● Conceituação ○ Git é um sistema de versionamento de documento; ○ GitHub é um serviço (gratuito e pago) cloud do git; ○ Existem uma série de vantagens de seu uso e a comunidade opensource contribuiu para que se tornasse popular; ● Histórico ○ CVS, SVN ○ Mercurial, Sourceface (Microsoft) ○ Git THIAGOFILADELFO.COM.BR | BUILDERS CODES
  • 9. Alinhados ? Então mão na massa !! ● Criar um projeto mkdir workshop_git cd workshop_git ● Iniciar o projeto com o git (shell ?) 1. > git init 2. > touch .gitignore 3. > git status 4. > git add . 5. > git commit -m "texto" 6. > git log THIAGOFILADELFO.COM.BR | BUILDERS CODES
  • 10. Aprofundando os conhecimentos (Git) ● git init Inicializa a criação de um repositório ● touch .gitignore Cria um arquivo de nome .gitignore; Esse arquivo são usados para indicar ao git quais pasta e/ou arquivos que não serão controlados. THIAGOFILADELFO.COM.BR | BUILDERS CODES
  • 11. ● git status Mostra a situação (estados) atual dos arquivos controlados. ● git add . ou git add <file> Adiciona os arquivos para compor o release de alterações. THIAGOFILADELFO.COM.BR | BUILDERS CODES
  • 12. ● git commit -m ¨texto¨ Consolida as alterações dos arquivos adicionados. ● git log Exibe todos o histórico de consolidações. THIAGOFILADELFO.COM.BR | BUILDERS CODES
  • 13. Fácil não ? Complicando um pouco !! ● Quero fazer alterações e deixar uma cópia executando, como fazer ? Ramificadores: são utilizados para desenvolver funcionalidades isoladas umas das outras. O branch(ramificador) master é o branch "padrão" quando você cria um repositório. ● git checkout -b <nome> Cria um branch com um determinado nome. Geralmente utilizamos a funcionalidade pela qual serão implementados as alterações. THIAGOFILADELFO.COM.BR | BUILDERS CODES
  • 14. Mexendo com as ramificações ● git checkout <nome> Seleciona um branch determinado ● git branch -d <nome> Remove um determinado branch. ● git merge <nome> Junta um branch ao outro branch. 1. > git checkout master 2. > git merge <branch> THIAGOFILADELFO.COM.BR | BUILDERS CODES
  • 15. Fiz besteira ? Eai, como volto? ● git checkout --<nome_arquivo> Restaura para a última alteração commitada realizada. 1. > git checkout --teste.java ● git diff <branch_1> <branch_2> ou git diff <file_1> <file_2> Realiza uma comparação de modificação dos arquivos ou dos branchs THIAGOFILADELFO.COM.BR | BUILDERS CODES
  • 16. Tudo bem ! Mas como faço um projeto ficar no cloud? ● git remote add origin <url> Adiciona a url de servidor remoto do git (GitHub /Bitbucket). ● git push origin master Envia as alterações realizadas para o servidor, podendo ser o master ou outro branch. ● git pull Recupera as alterações do servidor remoto. THIAGOFILADELFO.COM.BR | BUILDERS CODES Branch
  • 17. O comando pull não funcionou e agora? ● git fetch origin Remove todas as alterações locais. ● git reset --hard origin/master Força a recuperação da versão mais recente do servidor remoto Pode usar sempre ? Pessoalmente não é aconselhável !!! Pois pode perder o propósito do controle de versão. THIAGOFILADELFO.COM.BR | BUILDERS CODES
  • 18. Não gostei do GitHub ! Tem outro ? ● GitHub Beneficios: - Quantidades ilimitadas de projetos públicos e colaboradores para esse projeto Desvantagens - Projetos privados somente na conta paga. ● BitBucket Beneficios: - Quantidades ilimitadas de projetos privados e públicos. Desvantagens - Para os projetos privados número de colaboradores limitado (5) THIAGOFILADELFO.COM.BR | BUILDERS CODES
  • 19. thiago.filadelfo@gmail.com @trfiladelfo COMPANYNAME.COM | PRESENTATION Dúvidas ? Perguntas ? Iniciada a sessão de discussão !! Obrigado
  • 20. Referências ● http://rogerdudler.github.io/git- guide/index.pt_BR.html ● http://github.com/blog Força a recuperação da versão mais recente do servidor remoto Experts ? http://training.github.com

×