GIT + GitHub<br />Sistema de Controle de Versão Distribuído + Code Sharing<br />Mauricio Wolff<br />
Controle de Versão<br />SCMS permitem vários desenvolvedores simultâneos,  preservam milestones do código e automatizam o ...
Terminologia<br />Repository<br />Local onde ficam os arquivos e alterações feitas<br />Revision<br />Ou version, o estado...
Trunk, Tags, Branches<br />Tag v3<br />Tag v2<br />Test Branch<br />Feature 1 Branch<br />Tag v1<br />Trunk<br />
Modelo Centralizado<br /><ul><li>Dependência de Rede
File Lock
Backup no Server
Difícil de usar merge e branches
Branches e Tags são na verdade cópias do repositório</li></li></ul><li>Modelo Distribuído<br /><ul><li>Não precisa de Rede
Cada clone é o repositório completo
Múltiplos Backups
Merges locais/remotos
Branches e Tags são somente uma referência, não cópias
Não existe um trunk, a não ser por convenção</li></ul>1<br />1<br />1<br />2<br />2<br />3<br />3<br />
História do GIT<br />Criado por Linus Torvalds em 2005<br />Alternativa ao BitKeeper, usado para manter o Linux Kernel<br ...
Instalando GIT no Windows<br /><ul><li>Download: http://code.google.com/p/msysgit/
Instalar, com a opção de usar o Command Prompt</li></li></ul><li>Instalando GIT no Windows<br /><ul><li>Gerar a chave ssh ...
Configurar o ~/.gitconfig</li></ul>[color]<br />ui = true<br />[color "diff"]<br />whitespace = red reverse<br />[diff]<br...
Inscrição no GitHub<br /><ul><li>Projetos Open Source = free
Copiar a chave SSH e mais config</li></ul>$ gitconfig --global core.autocrlfinput<br />
Criando o primeiro Projeto<br />
Criando o primeiro Projeto<br />
Criando o primeiro Projeto<br />
Alterando localmente, atualizando<br />
Upcoming SlideShare
Loading in …5
×

Git + git hub

4,001 views

Published on

Introdução ao GIT e Github, para o devdell

Published in: Technology
2 Comments
7 Likes
Statistics
Notes
No Downloads
Views
Total views
4,001
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
114
Comments
2
Likes
7
Embeds 0
No embeds

No notes for slide

Git + git hub

  1. 1. GIT + GitHub<br />Sistema de Controle de Versão Distribuído + Code Sharing<br />Mauricio Wolff<br />
  2. 2. Controle de Versão<br />SCMS permitem vários desenvolvedores simultâneos, preservam milestones do código e automatizam o backup.<br />Podem ser:<br />
  3. 3. Terminologia<br />Repository<br />Local onde ficam os arquivos e alterações feitas<br />Revision<br />Ou version, o estado de toda a tree do repositório num tempo específico<br />Diff, Delta<br />Somente as alterações feitas<br />Checkout<br />Criar uma cópia local do repositório<br />Commit<br />Envio de dados para o repositório<br />Conflict<br />Diferentes usuários alterando as mesmas linhas nos arquivos<br />Working Copy<br />Cópia local (checked out)<br />Tag<br />Snapshot do repositório, para facilidade de manutenção<br />Trunk<br />Linha principal do projeto, que não é um branch<br />Branch<br />Linha alternativa de desenvolvimento, pode ser uma feature ou um branch experimental<br />
  4. 4. Trunk, Tags, Branches<br />Tag v3<br />Tag v2<br />Test Branch<br />Feature 1 Branch<br />Tag v1<br />Trunk<br />
  5. 5. Modelo Centralizado<br /><ul><li>Dependência de Rede
  6. 6. File Lock
  7. 7. Backup no Server
  8. 8. Difícil de usar merge e branches
  9. 9. Branches e Tags são na verdade cópias do repositório</li></li></ul><li>Modelo Distribuído<br /><ul><li>Não precisa de Rede
  10. 10. Cada clone é o repositório completo
  11. 11. Múltiplos Backups
  12. 12. Merges locais/remotos
  13. 13. Branches e Tags são somente uma referência, não cópias
  14. 14. Não existe um trunk, a não ser por convenção</li></ul>1<br />1<br />1<br />2<br />2<br />3<br />3<br />
  15. 15. História do GIT<br />Criado por Linus Torvalds em 2005<br />Alternativa ao BitKeeper, usado para manter o Linux Kernel<br />Simplicidade e rapidez!<br />
  16. 16. Instalando GIT no Windows<br /><ul><li>Download: http://code.google.com/p/msysgit/
  17. 17. Instalar, com a opção de usar o Command Prompt</li></li></ul><li>Instalando GIT no Windows<br /><ul><li>Gerar a chave ssh para o github.com
  18. 18. Configurar o ~/.gitconfig</li></ul>[color]<br />ui = true<br />[color "diff"]<br />whitespace = red reverse<br />[diff]<br />renames = true<br />[alias]<br /> s = status<br /> d = diff<br /> ci = commit -v<br />cia= commit -v -a<br /> co = checkout<br />cp= cherry-pick<br /> p = push<br /> l = log<br />ll= log -p<br />lt= log trunk..<br />llt= log -p trunk..<br /> lm = log master..<br />llm= log -p master..<br /> b = branch<br /> who = shortlog -s –<br />[user]<br /> name = "Mauricio Wolff"<br /> email = mauricio_wolff@dell.com<br />[push]<br /> default = matching<br />
  19. 19. Inscrição no GitHub<br /><ul><li>Projetos Open Source = free
  20. 20. Copiar a chave SSH e mais config</li></ul>$ gitconfig --global core.autocrlfinput<br />
  21. 21. Criando o primeiro Projeto<br />
  22. 22. Criando o primeiro Projeto<br />
  23. 23. Criando o primeiro Projeto<br />
  24. 24.
  25. 25.
  26. 26. Alterando localmente, atualizando<br />
  27. 27.
  28. 28. Branching<br />
  29. 29. Remote Branching<br />
  30. 30. Merging<br />
  31. 31. Remote Merging<br />
  32. 32. Remote Merging<br />
  33. 33.
  34. 34. Branch Diff<br />$ git diff bonsai<br />
  35. 35. GIT Cheat Sheet<br />Criar<br />git init<br />git add [. ou -A]<br />git clone [~/, git://, ssh://, http://]<br />Mostrar<br />git status<br />git diff [$id1, $id2 ou $branch]<br />git log [-1]<br />git blame $file<br />git show $id<br />git show $id:$file<br />git branch (mostra todos)<br />Adicionar ao Stage<br />git add [-A, -u, -i]<br />Consertar<br />git reset --soft HEAD^ (ctrl + z)<br />git commit –a –-amend (refaz)<br />Branches<br />git checkout $branch<br />git merge $branch<br />git branch $nome<br />git branch –d $nome<br />Update<br />git fecth<br />git pull [remote]<br />git am -3 patch.file<br />Publish<br />git commit –a<br />git format-patch origin<br />git push [remote, branch]<br />git tag v1.0<br />Úteis<br />git fsck<br />git gc --prune<br />
  36. 36. Referências<br />http://git-scm.com/<br />http://github.com/<br />http://help.github.com/<br />http://github.com/guides/git-cheat-sheet<br />Linus Torvalds on GIT: http://j.mp/3M94sb<br />Git - SVN Crash Course: http://git.or.cz/course/svn.html<br />A Git/TFS bridge: http://github.com/spraints/git-tfs<br />
  37. 37. Q&A<br />Olha o tempo antes...<br />

×