4. Porque Git?
• Orinalmente foi escrito por Linus Torvalds;
• Usado no código-fonte do Kernel do Linux;
5. Porque Git?
• Orinalmente foi escrito por Linus Torvalds;
• Usado no código-fonte do Kernel do Linux;
• Trabalha com ambiente distribuído;
6. Porque Git?
• Orinalmente foi escrito por Linus Torvalds;
• Usado no código-fonte do Kernel do Linux;
• Trabalha com ambiente distribuído;
• Criar branchs e fazer merges são
praticamente de graça;
7. Porque Git?
• Orinalmente foi escrito por Linus Torvalds;
• Usado no código-fonte do Kernel do Linux;
• Trabalha com ambiente distribuído;
• Criar branchs e fazer merges são
praticamente de graça;
• Commits são off-line;
14. Antes de Começar
• Configuração globais (~/.gitconfig)
• Setar informações pessoais: nome, email
• Pode-se configurar alias para obter
comandos iguais ao do Subversion
46. git status
• Arquivos fora do controle de versão:
• Novos arquivos
• Arquivos modificados mas não atualizados:
• Arquivos locais alterados, mas fora do índice
47. git status
• Arquivos fora do controle de versão:
• Novos arquivos
• Arquivos modificados mas não atualizados:
• Arquivos locais alterados, mas fora do índice
• Alteração que serão enviadas
• O Índice
51. O Índice
• Ponto de partida para seu próximo commit
• Lista de arquivos semelhantes ao mancados
como A, M, D na saída de svn status
52. Principal diferença
• Após efetuar qualquer mudança no
diretório de trabalho e antes de executar
qualquer commit, você deve usar o
comando a d d para adicionar qualquer
arquivo novo ou modificado para o índice
54. Committing
• git commit (git ci)
• Comita o que estiver no índice
• git commit -a (git ci -a)
• adiciona os arquivos alterados para o
índice e faz o commit, mas ignora os
arquivos não versionados
• Idêntico ao Subversion
61. Merges
# voltando para o branch master
$ git co master
# juntando as mudanças de outro branch
$ git merge {outro-branch}
62. Merges
# voltando para o branch master
$ git co master
# juntando as mudanças de outro branch
$ git merge {outro-branch}
# apagando o branch usado
git br -d {outro-branch}
64. Resolvendo conflitos
$ git merge {branch-conflitante}
Auto-merged README
CONFLICT (content): Merge conflict in README
Automatic merge failed; fix conflicts and then commit the result
65. Resolvendo conflitos
$ git merge {branch-conflitante}
Auto-merged README
CONFLICT (content): Merge conflict in README
Automatic merge failed; fix conflicts and then commit the result
# corrigindo o conflito e comitando
66. Resolvendo conflitos
$ git merge {branch-conflitante}
Auto-merged README
CONFLICT (content): Merge conflict in README
Automatic merge failed; fix conflicts and then commit the result
# corrigindo o conflito e comitando
$ vim README
67. Resolvendo conflitos
$ git merge {branch-conflitante}
Auto-merged README
CONFLICT (content): Merge conflict in README
Automatic merge failed; fix conflicts and then commit the result
# corrigindo o conflito e comitando
$ vim README
$ git add README
68. Resolvendo conflitos
$ git merge {branch-conflitante}
Auto-merged README
CONFLICT (content): Merge conflict in README
Automatic merge failed; fix conflicts and then commit the result
# corrigindo o conflito e comitando
$ vim README
$ git add README
$ git ci -m “corrigi o conflito com o branch {branch-conflitante}”