Controle de Versão
utilizando GIT
Frederick Moschkowich
Para iniciantes
Olá!
Sou Frederick Moschkowich
Desenvolvedor web
fb.com/fredmosc
Twitter: @fmwebdeveloper
1.
Controle de Versão
Uma visão geral
Controle de versão
Armazenamento
Trabalho em equipe
Versionamento
Contar a história do projeto
Dedurar!
Controlar quem fez o que e quando!
2.
O que é GIT
2005
O kernel do Linux era controlado por uma
solução da BitKeeper e, como era uma
ferramenta paga gerou discódia na
comunidade
História do GIT
Linus Torvalds
Resolve então criar sua própria
ferramenta de versionamento focada em
velocidade, design simples, suporte
robusto não linear, totalmente distribuído
e com capacidade de lidar com grandes
projetos
GIT
Sistema de versionamento (VCS)
GIT não é GITHUB
GIT Hub
Sistema web que oferece diversas
funcionalidades extras aplicadas ao git
Onde hospedar repositórios
Github
Bitbucket
Gitlab
Entre outros
GIT x SVN
A partir do fim de 2013 o
GIT passa a dominar o
mercado
Distribuído
Seguro
Rápido
Usado em qualquer lugar
Vantagens do GIT
3.
Instalação
Funciona tanto no Linux como no Mac e até no Windows
Linux
apt-get install git
Mac
http://sourceforge.
net/projects/git-osx-installer/
$ sudo port install git-core
+svn +doc +bash_completion
+gitweb
Windows
http://msysgit.github.com
4.
Links úteis
https://goo.gl/DDhjyW
https://goo.gl/BAM8Yj
http://goo.gl/atxM9j
https://goo.gl/sBZjyZ
Links úteis
5.
Comandos iniciais
man git-<verbo>
git help
git --version
git config
○ git config --global user.name “seu nome”
○ git config --global user.email “seu@email.aqui”
git init
git status
Comandos iniciais
Estrutura de pastas
Grafo do GIT
6.
Desfazendo alterações
git checkout <branch>
git checkout <commit> <file>
git checkout <commit>
git revert
git reset
Desfazendo alterações
Desfazendo alterações
git checkout
Desfazendo alterações
git reset
7.
Branches
uma nova ramificação, usado para nova feature, refactor, bug…
permite q o commit não fique preso
Comandos
○ git branch feature1
○ git branch
○ git checkout -b <branch>
Branches
8.
Merge
Unifica dois ou mais branches
Pode ou não acontecer divergências
Pode ter conflito
Merge
9.
Utilizando repositórios
remotos
Servem para disponibilizar para outros desenvolvedores
Funciona como backup
Repositórios remotos
Obrigado!
Dúvidas?
Pode me achar:
fb.com/fredmosc
fm.webdeveloper@gmail.com

Controle de versão utilizando git